Skip to main content

Full text of "EskHadeeth"

See other formats




8 






:* 








■*■=- -K 
















♦♦♦ 



♦♦♦ 



3 

f»JI 



U/l 







**" «F 



*Ai 



^*# .*.f 



y 



tin jl . ^Ufji-.'il iijlu «JiU jij^i jl ~«u£Ji 1A» j* tjr ^ s* jj£ 'i. 

All Rights Reserved. No part -of this publication may be 
reproduced, stored in a retrieval system, or transmitted, in any 
form or by any means, electronic, mechanical, photocopying, 
recording, or otherwise, without prior permission ol the 
publisher. 



*i** 



L^u Ji" ^jL^ J-j-s-Lb ,y ^>JI a>b, •( Aft ) ,>iJI jU»| ^ _,i ( Science ) 
Ji* j-j Jlijl Jui ji*^ *il» jL-iVL oUi i3}Uj L$JU *JUJI ,_>— Sfl JL»b j_* 
yJI JL-LJI — Vl ^ JbJbJI Jx. j&i^ jl* - jU g-'Lrr" -M**J j' <_** *Lr~*-" 
jili3 ^\j ^jiL iL^I yul^l ,>. jujuJI Jl j-lz^ jgI "tfl Lfc r U)fl v^ 

ui Jl AJl^fL i^ljbVI AJjJJj ff-olyJI J»it*-o X^iw 



(Jjl#. J[ J>-^jU i^jt-o i»^o ^ijj ^JLII - jb-ljJI gt^bjJI jl jlJ iiLi*if U^j 

Ajji p-olj-JI ^Jzk*^ frfi JbJUtll *Jzjj,\jj »JL£i3 »j L» lil - OJL*»« i_j|jL»l jl 

i^ijj (^UJI ^UlJI jl *ij ji-^l £-0 »4JL<a ^V Li; 7 ,11 oljJi> JjLj jl V *-^ 
JLiUJl ,> ^Ldl ^ *L£ liib i^II (JlJI ,y J!>LVSM jjiu X, .1^11 ^ 
iiL^U | l ^x : w-aiuij (^jr*' tP iji'^*" j-* - -/r*i Lo jJlL «-oLJI kfa>J JLJUJI 

-L*b#l j^jJS Jl 

JlJU i-rjLJI JLLwIjJ J-4-3U jl j£»J JLxljlj)/l tjJLiljj !^-*JI jl l^» ti^U-Vj 

,>X»j jljIjls.1 jb-i _^jju (jlll i_»L£JI II* -tj£j CJ>\£ juJI IJub (>a j .JL-iUI 
,>* jSLillj g-oUJI JiJiiO IL-Jl^J JLJLJI <-Jlj»JI J^ (JL1I - £->»W kt,;.,. 
iL^o JS'Lil i>jXill J>JL>JJ £JLJI ^ JUulx^o j-o - JLoJL>lLJU i*-»^JI Oljjl 
£*j .i^jLill ^>Vl CiljLUyi Jb-l ,^3 LbjUlB frt> f^JiXi j\ «ju-aj *SS^J v^-^y 

^ oL-iJI jiuu ^jL-^I e ,x,Lill j-ki-j LfiiSL-o ^j ^Jl ^AJI .^ ^UJI 

. V L5UI II* J l^jjd\ o^Uil ^ jbJbJI 

il>^ Jl ^ jJidl ii>^ Jl wljuiwVI il>^ ,>- JJLlli jl .^l»1*U j^-j, 
ol^JI Li* jl=>l Aj -^V *J^^ J! jJ^; ^ vd^l il»^- LfcL JjjuJI 
ZlsUII a* Jl ^^j .(DBASE) 5JbU ^.1^ ^*, Sj^l i^.^JI oljil Jb>I 



( DBASE III+, DBASE IV, CLIPPER, FOXBASE, FOXPRO ) ^ ^ 

V»JUij ^IjL L-L* jjiL; ji V L3JI IL* Jj: £jU»yi jua «^UU ju?j 
J^lji »j'il ^ -^ ul >JJL; ^_, .USUII *h> Hi J> 3L.jl^JI i^jj 
t j;jUll ^^ UJi ucT i*j*^ j_. "^LUI £ ^jj| " j " jjVl ,j*J| " oUUfl 
ii5Lt g^ fbi ^ J Jjic-L, *~^JI v^JUlj ^Iji Jx o>Ji ^ .^jcil 

.( DBASE ) 

f 3 0--J • 0*^1 *** ,>- -J* J^ ^J *■»»« Ob « iil^JI ^USJl Jj-aJj J^j.1 
.^pLJI *15L*.j r lkJI ^^=i r UII jltVlj i>j>ll jlS^'VI j^ J* o>JI 

i-Lx. jtjjlio Ji" j-« *ijjLi" Cr^i L»J^*j .I^Ll- (Ji; .UJ sj^ 5 ^' '■*•» 
IJub ^ liji^II JUULo'^l J^. UkiUI o^LourJI J^>l ^.hi-j ^1^1 -LJ^ 

.Ojiill OJtfll Jl J.J-3JI j-» Jc£-j Lwj JUoliiJ Ol>Ljb.l t* »£Lj Lv wllSJI 
x^si^JI pLxiJ ^jj Jj-jAirfj SjL^ Jj-a- ^^Jj jl3 «<j;jLiJI j>£j *k>M **-» J- 1 * 
*-»lj-JI ,>» jujuJI jjjJij ,>» Lajuj c^*^ ( DBASE ) ilSU ,*& JjlJc-U 

OjJGj 4jjJLJ J^oJj 4 >^^i»fai ,^c. j— *j 4jiii?u» cmJL.iI iUtjl t(> jjUJI »^ri7 ... j liujP- 

e jj>JI .J>>i iU~. Jl i—~Z* X-aJ j-jj-ifj jjJUJ ,>j. .~»U£JI j>iwy 
jw»^J J,W\ .>jJI Ui .( DBASE ) ihU ^j, JiJ iL-Li i**^ l^ JjSlI 
j-jUll ^ jujuJI ^ p L*i-*J gLoj ^Ul UW' o*^J oL,.>U. f Uii 
^I^JI jl>) dJUJI ,>»JI ^,-Iju, .iJif-j iJ*-~. ii> i«^UJI oUS 5 ^a^, 
^i gjLJI .j^JI L.I .jjUll f lfc 2-i-^; >*j f Uic- , i» 4_oUJI i-j-Ull 
^ L-Ju^Jll S---U1I ^-UJI o- La-i->*j-*^*JI ^ L -> r 1 ^ <> 1 *^ 
U 2uu i_i ..-^ : -Op ^—UJI .j*JI Ul .i^L^JIj Zi,UuJI ol—jil ^ Wl 
^.I^JI JJ*^ L^l. juiu-, jl cf-j ^\j e-UJI J»J^ i-*^ 1 v-J^ 1 



^iUI t±*J\j .( DBASE ) £-.1^ fjiu f ljLki«l Jx. Ojjtfj iiLiT gjj ^j 

^ A^»L*lJ j^j U>i-o U*J»j ,j— a£j ^lj JLJL^fl oUwIl-JI Joju Tj^j 

li* ,>fc.iio US' .^U jl j^o jl JjJUjj f[>j^Jj ojUSllj (JjUll obLj jj^«j 
^UJI ( Application Generator ) oli~kJI jJj_* .IjAzJ £j-i L22J «jj>JI 

.( DBase III+ ) £*b^ 

i«JJI ^ »jubj vjL^JI I!* ^ Jt,Vl iiv-JI itLU j~, jS\ jfJJij jjj^j 
0-ft oUjL iiU.1 aJJ/, oLiJiJI ^ ju>. i»U»l Uv ^^.jj ^ill i^jliJI 

^ .j-jWJ ^^3 ji ^ ^1 SjukJI o^jUll Jb-J V L£JI I!* wr ^ J u, 
Op - »/i J-- L« iibtfL - jl«JI IJL* ^j . f ljL^-VI i*:UJI 4.8.. bill ,JiJI 
C^j !->>Jj-^ Jk« ^ i^nJI Lj£JJ iLUfe. JL»U,I -u, ^L£J| IJUb 

-UJI 



aJJ? j^^^i XttJX4 . i . I 



w " jl^jul. " j/n J^UI 

y. Ikt-JI S^j-i-o \ - ^ 

Y^ (Config.sys) r lkJI oULol^. JjJlo Y - > 

Yo " ^i^ji t i^T " jiM J-uUI 

W j^lj oULu ijuiIj ^ J-»l*=JI \ - Y 

YA (Relational Databases) ikj^ll obLJI JL*ip Y - Y 

r . ^jl C iULy" tr --s J JI oilll r L^> r - Y 

W --. olibOUl Jji> f LiwJ t - Y 

n ^j^JI ,i«j| " ^jlji j^ui 

i\ u-jf*^' f'J^-l ^ " ? 

t Y ^i^ji j> y - r 

£Y" ■-* ^ juo (^Xo jx i^otJI Y 1 - ■ V 

£0 JLpL-pJI oLLjJJ £>j~JI J-^-W I - Y 

£."\ ji)L£JI itLt i^-i SjLj o - V 

£V o^U-JU ^j^JI j~JI 1 - r 

£V " liJbiio ij*j$* CiULo «-o J^Lcdl V - V 

^ _ ■ ^IfcJJ f ,., M ^,1^. " g\J\ J^J| 

d ^ (Problem Definition) IlSLill oLyO N - £ 

Y (Input/OutpuQ^U/Jlj o^iall lJ-^-jJ Y - £. 

oY — cjUUJI Ijlc.15 a^wuu V - i 



or (Moduler Design) obUJ 1*11 p .>.rt=H t - I 

00 - ^l^jl a.uS' * ^UJI J-UI 

y ^.Ij^l oUL. .UjI \ - 

^ f jja~ll £> JaUJI y - 

^ (ACCEPT) ^-.Ml \ - r - 

v (INPUT) ^—.Vl Y - Y - 

v ((WAIT) .r-Al r - Y - 

AN (@ .. SAY .. GET) j — -Ml t - Y - 

AY yjWi auji r - 

u (IF) jAl JhJy. jljiW 3U3| £ - 

^ (DO CASE) jfi\ JLljt jljDI iUd o - 

AA ^uu w^ 1 *ta" "* - 

W " (Debugging) £**-sJI JsUj " ^-aLJI J-uJI 



\ - A 



Vo 

v ^ (Memory) »/WI &J* Y - "\ 

vn . (History) pjUl u!»j* r ~ ^ 

W (SET TALK ON) ^Ml f U*=J i - "\ 

VA (SET ECHO ON) yNl f bioJ o - "\ 

VA (SET STEP ON) Ji\ - f b*>=-l 1 - A 

VA (SET DEBUG ON) yH\ f LAs-l V - 1 

v ^ e-W' ^ • U * 1 f* 1 

v ^ (Data type mismatch) DL-JI \ - A - "\ 

v ^ (Invalid function argument) SIUJI Y - A - "\ 

A . (Unrecognized command verb) 3iL-jll r - A - "\ 

A . (Variable not found) -SJl-jll I - A - t 

A . (Record out of range) DUJI o-A-A 



A - A 



A- 



(Too many files open) UL.JI t - A - n 



IwJLaJI *5j 



fy^jll 






^Y\ 






^o.U.J \ 

r.^ll LJUJI p-— a3 Y 

s^LiiJi oij^b jiAfc* 1 ^M* r - 

obUJI JjJW IT - 



Ao 

AV 

AA — : 

AA 

\- 

^ . c^U-JI 

-\Y f UiJI ^ £,>JI o - 

^y obLJI »ju.15 oiL. «Liil V 

^ J^iVI ISli *Liil i 

\ : jjjZJl e Lijl 

\q pjibjJI Vj-^jJ "\ 



V 
V 



j>5— _* 



i - 



- V 

- V 

- V 

- V 

- V 



V 
V 
V 
V 






- (Rep) £-l^JI \ - ^ 
(Label) g-UjJI Y^-V 



" j^-iil g-bjj " jiUJI J-^l 



o^kwJI £-— • p-*^ j-** i^aUJI J-ojLH 



■ ^Ull >lti * AJlill x^l 



f lkJI «JL-».p " ^JLt j\Si\ ±*ti\ 



.IkJI 



N - NY 



\\ 



h»Jua}\ *3j 



£j-<»jll 



Nit 
Nio 
Uo 
NiV 

\1V 

no- 
NoN 

Nor 

NOO 
N0"\ 
NV 



c li*ll jj> y - ny 

f ikJl ^l&j r- ny 

oUUI JjS> JujjO i - NY 

oULJI Jjtfclj *-*-3j o - NY 

(Master File) ^Jl oUll .UjI N - o - ny 
- (Sales File) oU~ll JL. .Li;l Y - o - NY 

UijI^JI JL^I JL. .Lq r - o - ny 

; -\ - NY 



£*M j- 



Jjjl iotiJI £»lijj 



*2JLJI J-aJJI 



(PSEUDOCODE) SJjS'l ol^iJI ^UT N - NY- 

g*KJ\ itr y - \r 

g,bjl jU^I r 



Nf 



\ 



Ar " ^ji jail j-Aia e-u^ " ^ e yi j^iJi 



no ^ji jiii j^ e-^ ps-s N 

m ^'pMr - T 

^Y olu»Sll IiU»| g-^ F 

nA JlSo^l -itli -LiSl ^ 

n <\ (PSEUDOCODE) SJ/5II oljWI ^ Y 

w . (Addnumbs.prg) oU^I g-li* LliS" Y* 

m ^J 1 ^ jw 1 * £* 

m (Current Stock) JWI &}*H sJ* 



M 
\i 
\i 



Y - M 

- \i 

- U 



NVN 
NVV 



(Reorder) .-JUI ■** -^ 
m (Purchase Order) J^JI «-^ 

JUJI g-»^ | t : . .< a S 

.i^ji yiji e*iof V " 

g-l3^JI LW A - 



NA- 
NA- 
NA"N 
NAV 



j& 



N 
Y 

r 

t 
o 



i 

M 
Nt 
M 
\i 
M 
\i 
\i 
M 



\i 



NY 



,NU .j-^ 1 <-«^l Ji-^ g-^ji - U 

^ - L~il ciL. J-*£3 £-L^ " ji* ^UJI J**ill 

Y-^ oUJll g*\jji vt^v 3 ^ ~ ^° 

f.y I.„,,^l JLJUJI g^ Y - >o 

v-r j^ji ^iii ^b^ r - \o 

Y . v (PSEUDOCODE) *J,Vl olji^JI LliT \ - r - \ 

y-a e*M' ^ v - r - ^° 

YYr uT^uJi ji>ii r - r - \o 

YYY a^JI jjjUj £-«IJjj £. - No 

YYt £-k*U SJjVl ol^kkJI iUT \ - I - \0 

YYo £-lijsJI ^ Y - £ - \o 

Yro " liUVI ciL. J**13 g-bj, " ^ y-aLJI J^OJI 

YfA ^J\ ^Jji \ - H 

Yy-a (NMenu.prg) iiUVI 3-J13 g^ Y - n 

Yt. (Newstock.prg) oLl^VI cUL, JU-j[ g-U^ r - n 

Yt> (PSEUDOCODE) UjVl ol>iJI Jul^" t - U 

Y£\ ^ bj j| ^ _ n 

Y£. (NewReps.prg) JjU)ll j^lE g^ "\ - n 

Y£A g-l^JI ~*A* V - U 

Y \ IjLJ| ^j^j ^^ " ^ ^lji j^j 

Yor (Master.dbf) ^--5^1 <JUI ^j^j g-lj^ \ - w 

Y £. (PSEUDOCODE) SJjVl ol>UI LtT \ - \ - W 

Yoo £-L^JI itf Y - \ - W 

,y\v (SalEditprg) oUJU JL. g^wrf g^ Y - W 

YU __ (PSEUDOCODE) ljji\ ol>*JI \ - Y - W 

Y"U g-li^JI US'. Y - Y - W 

\r 



ZkjLoJI 



r 5 -; 



ryr 

YAo 

YAV 

YA^ 
YA^ 

y\- 

V\\ 

yu 
Ysr 

YU 
YW 
Y^ 

r- • 






r-n 

r-A 

r\r 

no 
m 
m 
rYo 
rYA 



(NewEd.prg) iiL^I aL, ^^ g,^ r - w 



oLLJI »JL*15 JSL* jlu»w Y - \A 
(Customer.dbf) J-^1 oUL, *jLo \ - r - >a 
-- (Charges.dbf) o^JI *S> viL. Y - Y - u 

(Payments.dbf) aLUI ,_iL r - v - \a 

— V'iAxM cbLJI Jii> V - ^A 



OljJiiJI oliL> 



j-kil J-^uUi 



(A/R) .XuJI cLUv g^bj, ,y ol>iJI JL. r ljia-l \ - U 



(TiUe) ol^uJI g-ls* 

tUu-'jl JjL-j ?^bj< 

OJ^iiTJI \.al " *Lijl 

CjIjojJI uiL* »tZi 

— (Parameters) 0X.UI JUol 
(GetCust) ol>iJI £*bj! *-lji 



Jjd-iJIj JU-i^lj L-^JI I*3UJf g-U^ " ijj^JI J-OJI 



Y - 


S\ 


Y ~ 


\\ 


i - 


\^ 


- 


u 


A - 


\1 


Y - 


\\ 


A - 


^ 



_ — '3L--1 / JI JuiUJI ^.Lljj 

(NewCusLprg) «^LjJI IiU.1 ^oUjj 

(NewChrg.prg) o^-JI ~4j>- IJLbJ g^li^ 

(NewPay.prg) jL~JI #> «U»I ^-li^ 

(AREdit.prg) J^jucII ^A>j> 



\ 
Y 
r 
L 




U 



ff. (EdCust.prg) J^l cJLi ^jw \ - o - Y- 

m (EdChrg.prg) o^JI uiL. J^-uj V - o - Y • 

m (EdPay.prg) *IjlJI UL» J^juu r - o - Y • 

m * .^UJI C.LL* g-U^j jjj\U " axr^JU tpWI J^ill 

Yt\ (ARPrint.prg) l.....*J\ ^UiJI JuilS £-1^ \ - Y\ 

rir (BillProc.prg) cl>iJI ^iL. Y - X\ 

n\ (Bills.prg) Z LA ^J\ ^lyUI g-ob^ r - Y\ 

Vo\ (ARStat.prg) iJUJI jUsI £-b* £ - Y\ 

no - fljL jj aA ± Ji ^j^ji • ^j^jJIj ^LJl j^i 

rvo - " ^Ullj .^LJI oLL* ^ J-l&JI g-brf " a^^LJIj £JLJI J^iJI 

rAo c ,\£ i *J\ jy-£ ^."^ " jjj^UJl, gl^JI J^iJI 

Ho 6 |^|| jlaS ,| ^^ - ^j^Jlj ^UJI J-aiJI 

t ^ " ^^jji a ^j, dijrf ^ bji - iljLr * J j| J ^lji j^j 

t \ j jsll ^^J^i - ;u>Sj J| J ^LJI j^jji 

tYl obLJI jjitlS pA ,.rta N - YV 

tYo ju.j«| liLi ,Lu| Y - YV 

£,Yo Ljl^JI^LuJIj JJJI .Ltil r - YV 

try ^ b ^j, ^^ t _. YV 

No 



i^uLaJI 



r»j 



jyj»jii 



. t.innftim** 



f.YA 
IYY 



(HOME.PRG) l~~ij\ ^UJI £-1;^ \ 
- (HOMEREPS.PRG) ^ 



UxJI £-Uy Y 



ii\ obLJI 



Tt^TWXJ 



££A . 0"&*-JI «— » t - 



£00 



jlj^JI jUil 



- YV 

- YV 

- YV 
= YV 

- YV 



£."\\ 



Oj^LJIj ^UJI J^iJI 



nr 

£."\0 
£V- 

tv- 






\ - YA 
Y - YA 
r - YA 
£. - YA 
- YA 



n 



Xa.t.ia 



J^icMii 



w 



ii±JU 



,JiJ JJL. f ljL^M i^LJI oUjJUll |Jb J^ ( LjJa ^ i*>*~ ,>* (1) 

.^LjJI oU~> ,Juj ( Inventory ) jjUll ^j ( Cadets ) 2JUJI jj^- 1 oL^i** 

f jio-j ^Jl ( Techniques ) JjL->JI ijb-l J* jS"^ jj*j .( Accounts Receivable ) 

.l js £}\ J.JLL-JI it^j aJUI I.USJI oli I^UI £*\jJ\ i,& ^i 

I 

JL*>UJI JljJIj ( DBase ) iiiU ^>lji ,Jm>i pLioJ ^Ijj Ail Li" -g-ol^JI .jjUJI 

L»lj5l Ua JL^j^o ^jp Li" .JLiuU IL13 ZLali' p-*^ SjLx^ Jji tjjJLlI ajjJ _^>Ij 
- L^liSU Lili" LS, jlkjV ,,$111 - (x>UJI gs^^ ^»-»y p- '^' *■*■* J- 6 - tfj-^ 3 * 3 

juill £*i dUJJ < j-iLJI ^liSUJ JL&lJ jjb rLiuVI j**» L5" «_jL^JI 11*, 

c^jUJI f ^EiT ,, j j .»ij->_,ll k-oIj^JI i_iljuZwi c^jUJI p.Ja.Z.«j l _^i> l j r oLl5JI ^jJLIb Itl^J 

i£l JuUSJ L^liall »j-^JI *-—£; IJub j| i^> UJuiLjj v_*«UJI Jji p^U-" »J-* AjL^ 

ibU g-y ZJL-U JjlvI^ ^ SjU JjVl ._*JI « Jj»l Si, Jl r ..»:_, ollSUlj 
^iJI JjL-jJI ^^ ^-1^1 i,Ltf j>J ^^l^J I^jLkiJll j-Ij^Ij ( DBase ) 

. UJujLj A-fr^wj lp« US' ^e Jbjj 

Uy Ji^ ^JJI ( Cadets ) 2JLi\ o^ oU^, f Ik g-l;^ £>Lj ^JliJI .j^JIj 
£-"^ jj»j .( Single Database ) »Jb-lj oUL, Jjlc.13 ^> J^Lcs ^iJI g-oljJI ,>» 

Jli^l oL4La- f --a3. J* Ul.1 jS^ LT .( User Friendly ) f j^Jll ik-l^ ^Lvia 

J-aUJI oL,Li jtjsjj ^ill (Inventory) ojUJI g-»b J j-^ / i ! »iJliII «_>>Jlj 
iilii^ J-** jJ?Ll. ,^o Lpdj oLilll «JL* Jtjjj ^LjW •*-*•'>» oUL. »jlc «-o 

.(Work Areas) 



^ 



tjisL, 



^ill ( Accounts Receivable ) .X-JI oLU> ^ y ^ g\j) .^r, 
oUlil f LasJj l£u*w, ( Related ) iLpJll oUUI ^ J^UdJ UjJCl. oUUUl 

.i^aUl obLJL .tU^U ( History Files ) i^UI 

,_^JI ( Advanced Techniques ) i-jufcll JiL-jJI jswu sJu^, ^^UJl .^Jlj 

•A3. US' IiL>J ^\ij, J\ p. l^ljioJ g-ljJI JalliJ ,^Sw 

.^ U^i- ULjk: ^zz ^1 iJU,?! oli-kJI ^ ^ o- iLJi «^ !| j 
^ -ij^ri <i' £■— • jl Je- 1 -* 3 J 1 £^\r-'j Vj^'j «Jjl*ll oUL- ,>->*; .ji *-«Lil-f 
( Application Generator ) oU..kll jJj_« ^ L*i_l r^i uJ ,;#JI IL> ^., y : 

.( Dbase III + ) ^-U^ ^UJI 

.oL.jl*ll fk, MA j-. >LcJI Jx. IjjiZJIj JLJ15JI »^JI Jl v^ 1 

JJL. ( DBase ) iLU £-.1^ £-* J* J-^*3 ol^Jl IJu> ^ i>jj-ill *-»yi 
jj*\J1\ jl L/ ( FoxPro ) . ( FoxBase +) . ( Clipper ) . ( DBase IV ) 
( DBase ) ibU g^ ^ Loj^i-JI ^Ijifl ^ ^> £»UJI »j* *A£ ^ *ju^z_il 
.( DBase ) ibU ^\J **».IJ[ o-SA-J 1 O^ 1 ^ 1 J! cM -v^ 1 

( Dot Prompt ) *lidl Sj-jl. \ - \ 

JJ ^-J^ ( DBase III+) g-L^ jlJ ,>JbLJI w t£JI ,y £^1 >*- ^ 
.( Dot Prompt ) iiaiJI *j~^j ( Assistant ) j^Lil g-ob^ L* ,>~-to O** 

«Jb JULt ( ESC ) ou^JI C lsi- J-* J^JI Ji> Cr* i^ 1 '^- u*r* rii 
i^L. ^^ j^y .( Assistant ) j*UI ^Ijj j^j ( DBase III+) £-1^ J-U3 
JL. ^ J^-i J^u" -W ri rfUi -i^J -^^' J^* -^ l^W- ^^ 
" " .Jill ^'a-JUII c^-J' -^l ^J ( Config.DB ) oli^l 



lt£a£l 



STATUS ON 
COMMAND = ASSIST 

( Config.sys ) ^L^Jl oUL^U- Jjitf v - N 

j~£ axe. JjLki-lj *,.,„_. ^ill jJi\ Jji &y^Si ( Config.sys ) .IkJI oli^l^-. 

Too many files are open 

^IxiwL-L ( Config.sys ) ^LkJI cAJl*^ ,_iL» JjJua ^x> dJi J_t ^JUdJ, 
^LijJI ^i J-SLUI J-. oU 2LjJL^ £-1^ ,ji jl ( EDLIN ) £--L^ 

^— JLJI ,>j^uJI JoLtf 1 j^j, .( Non Document Format ) 

FILES = 20 
BUFFERS = 15 

<Jb» J-*-~ p-~; ij2> jljJLv &j> jJLi-ij laLtlj jlfJwJI .Utl idJi juu i-^?^* 
.^I^JU LJWI ( Buffers ) i/IJJI jjU^j ( Files ) oUUI ,^-kij oU^il 



YN 




Jjfll **» 




Sjfaf f*J4J uL£ 3uta»f j4 



fcJj*ȣM 



£3WI JtoAJI 



e*L*Jr ^r^» 



Yo 



jjii g-»Ujj JJL. ( Single Database ) jl>[> oULw »jlaLj «-*Li £* J-*Lca ^/Jl 
oliLi Ijlc ^-o J^Lcj (jpJI g-*UJI o- 8 j' ' C^?' r~r- *-*" ( Cadets ) JLJUJI 
oULij j^-io «-«L> ^ J^Uu ^1 ^«UJI o-« ji « ( Related Databases ) ikj^ 
^jj Ji" J* .j^JI «UJJ ^ uij- JJil .( Master/Transaction Databases ) iS>" 

•gjj Ji" JI ,^^5 ^1 g-»ljJI ft*-a3 J-J 3£*£JI ^IjiSfl «JL» frA 

t^^lj C'LLi ftjhcU ** J^Usll N - Y 

tJLcU «_oL* />,j.,.<3J ,y»£j if*^> .K-*{jJI pl^jj Ja-jl j~JU UL«JI UJb ^ w-aL^JI 

Ijx. jci JI *>U JUa o£fi oJJJJ .uilll lift m Lib g^UjJI J-oUijj jl>Ij oULu 
l^UJI J^-j I!*, .cjiyi ^ yi ( Work Areas ) J-^ jkL* sjlc f ljij«iJj oliL. 

.t.iji.:." Juuliaj n^bjJI ^ 

.( Dot Prompt ) UuJI Sj-l« ,>- JUI JLJ\ 

CREATE Cadets 

»i* Jj -oLiJl ojJUl oLLJI »jLftl5 ^iL. jj. ( Cadets.dbf ) ^ilil o^ ^e- 
*^j£j Mjlj JJb- J5" (►-.I juvpu l^bU fr> fZj jd\ JyfeJI jlu«3 JuilS jfltf ilUJI 

•CiJ>j o{ *iA«JI pl3j!" i-J^-j 

: ^L. ^15" UJ iliUI i^L. ^ ^^1 JL. .LMl ^ US' 

USE Cadets 

INDEX ON Name TO Name 

IS .Ukll .U-V ^iL^il c^^dl J* .Lj o^-JI y^ ^ iJUII u* ^ 
ri tfiH cr-^^l J^JI j» Jj^l JiJI 0^ £-■ o-lV c> «^ ciUUI i-^i ^ 



YV 



USE Cadets 

INDEX ON Name + Class TO Name 

: *5tS-« y3"5fl lAzf ^j ^^r^fill dL» £y i^ L*ju«.j 
USE Cadets INDEX Name 

SET INDEX TO Name 



( Related Databases ) aLsJ>\ obLJI ^1^5 r - r 

.J-aJjJI i*^. JiLj J| iiL^^L L»i*i7,„H Z-jjj^JI i>Lil 



^£-j < ( AR.dbf ) «!)LjJI oLL^J oULj .jic.13 iJL. )t: ..a' jul& ^U 



Structure for database :C: AR.dbf 



^ ( Vendors ) j^iL? «4Ljb o^ ^» «s«* «-* iJJ t ~r- 



jSV 



Field 


Field Name 


Type 


Width 


Dec 


1 


BILLDATE 


Date 


8 




2 


AMOUNT 


Numeric 


9 


2 


3 


VENDOR 


Character 


20 




4 


ADDRESS 


Character 


20 





IJLsj 



VA 



frfti fcM 

>T uiL. Ji jI^jjJIj ^"Vl JJL- j^UJ iu-a^JI oLLJI 1> j>j £» ( ARl.dbf ) 

.(AR2.dbf) 

: yfltf ( AR1 ) cilil «Lyl ^ -^j 
Structure for database :C: ARl.dbf 



Field 


Field Name 


Type 


Width 


Dec 


1 
2 
3 


BILLDATE 

AMOUNT 

VENDCODE 


Date 

Numeric 

Character 


8 
9 
5 


2 



: j?K ( AR2.dbf ) Oi\ .Liil ^ U" 
Structure for database :C: ARl.dbf 



Field 


Field name 


Type 


Width 


Dec 


1 


VEND_CODE 


Character 


5 




2 


VENDOR 


Character 


20 




3 


ADDRESS 


Character 


20 





pAi-j ^AJI JjuJI j*j .( Vend_Code ) Ji> _^> jjd\ jl^jJI Jj^JI $1 Jfc-'iLy 

,^-illl Jay ^i 

: ^K ( Vend_Code ) J^iil Ji^JI J* Uu>f L-> ^ ^1 ^j* J^JT, 

USEAR2 

INDEX ON Vend Code TO Vendor 



Y^ 



Sj^jJI .UiJ ^ .( Work Area ) iil^w. J^t !ik. ^ aL. J5" jci ^ ^ 
jtA-JI C^ £-^ L* ^Uij •( SET RELATION TO ) ^Vl r L^.L '^JUI ^ 

SELECT 1 

USE AR1 

SELECT 2 

USE AR2 INDEX Vendor 

SELECT 1 

SET RELATION TO Vend_Code INTO AR2 

vt-» .( B ->) j-ojJI fjic~j ( AR2 ) «Jlll Jji> &> Ji> ^1 ^fjc s\j, Uoicj 
dJi ^ (^-.j . ( 2 ) ,Jj J-oJI Sjikd ( Alias ) iJ»Lll fJi\ JI~ L* ( B ) ji 
.( Accounts Receivable ) «^L»JI oLL-> ^Ik; £>£ jl^. J- r aii , L 

iS>JI oUly ^^--S^JI villi f Ufc r - Y 

oL^llj ( Inventory ) jjUill p-kj f * a ^ e p****-* fW 0^" fcj-^' '■*-* 

^ ciLL; *JJLo JU* 0j _£, £~> ( Banks ) Jj-^'j ( Libraries ) 
uilll oULj i-j~ ^ ..J^ ji «U»I SS> JS" oUU Jt j;y^ ( Master File ) 
J»_J ^ jjUll f ^i ^-j •( Transaction ) iS>JI oliL. ^ ( Master ) j^-^^l 

£^0 yb US' j.lkJI JiL* dj^a .jSjp- Cr^-*J -^b ix-^J *-**-* J* tfP'v; *ju-" 

.( \ - V ) JSLUI ,>. 

J*UI oxjiJI ^ iJUJI oULJI ,> ^^ *L. r UiJI IJus J vr ^J\ JJl\j 
8>JI cAiU -^ juj^ jl o^ a> JS" obL <> J-*~ ^ •( On hand stock ) 
UHji\ -JL^I-JI t >~ ajI f UiJI Li* itflij .jj>vJJ JUJI ui5^1l Lib ^ ^i* 

•JL^illj ev-JI S$> gt. Uf XW J^" «i JWI 

,j*JI ^ Ji> >j Si>JI OUL.J lS ^J\ Jill w al/^ J*> »j« ■***» 
..Ui-^ .JffiAiJI oUll Juj <J f ^ ( Unique ) >>^ J*- j*j ( Part_No ) 
, aU* JLfcilj .Si>JI oliL. ^. ^--ijl JUI C^a J (UPDATE) ^i\ 



.( PartNo ) **J\ ^ Ji> J* ii>Ulll v^i if,! 



| Inventory.dbfB 



r 






Part number 
Part name 
Quantity Sold 
Selling price 
To: whome sold 
Date sold 



Part number ; 
Partname 
Amount in stock 
Price 
Reorder 

Amount on order 
Due date : 

I. 



L 



I Purchase.db 



Part-niimber 
Quantity received 
Purchase price 
Vendor name 
Date received 



i ^ - v ) j£i 
1/jl y^j ( Sales ) oUJll ^iJLo &> ( Master ) lJ ~?J\ «-Alll ^jl*iJ ^jlj 

USE Inventory 

INDEX ON Part_No TO Master 

USE Sales 

INDEX ON Part_No TO Sales 

j-.Vl (.IjLiuL-L ( Work Area ) Uk±^> J^c UW,« ^ i_aL> Ji" ^j ^ ^ 
.iU-JI aL. ,>- oULJI j£ ^ ( UPDATE ) ^.Vl f JL*x^ ^ « ( SELECT ) 

SELECT 2 

USE Sales INDEX Sales 

SELECT 1 

USE Inventory INDEX Master 

UPDATE ON Part_No FROM Sales REPLACE On_Hand ; 

WITH OnHand - B - > Qty 



rv 



Uij> f ljLiO-l pi LiLlll J^. >-JI J> ^ ^1 JjLj JLLP *j VzSXa y r ^ t 

«i* (ji ILkjJUll ZLoUII *JLJ», £-»UJI -iai»w« oyu jl v-**^ .(;) it^idl *JL*LL'I 
JUI >~JI ^ J[ ^ijj o>JI Li* jl d^ y>i\ UX J \}± ^W¥ j± UUJI 
IJU- iil— ijj.j LjJLLo jj^L; L»JUt u-^l^ri liUUj .^LS* ^jUJI ^iuJI Jj 
,i,i JUII >-JI ^ o>JI II* jV OjpJI Li* Jul3" JJ SjLJI J* J^ ( Space ) 
Jl ^ijj jiuJI II*} .iiLJI j-olj'ill ^-» j-a-Vl jkJI ,jj Li* Jsl>Xj .oliLw* ^i 
j^U ^f. ( Sales.dbf ) oUJLI Jl* ,>-o ( Inventory.dbf ) ,^-^jJl ^1 £jju»c 
i^i" l^lo UjjJi^ oLpnll ,^-j-j ( On_Hand ) aJUJUI i- r *SUl Jj> oLpw JLui-i 
,y oLvJU ,_iL* ^ l^U Jj-«JI ^ ^Ij ( B -> Qty ) l^ ^ ^1 Oi-JI 



.jLSj^U I ^^ij ( Purchases ) oL^iil <J±* &j> <Z~j,x?c}\ i-L* . 1^1 &£-& 
iikL- ^ oL^ill JL. ,>-. ( B -> Qty ) sUxJil i^JI iJUl y> ju^i a>UJ1j 

: ^Lf dJij .i-LuJI i-£JI JJ ( T ) ^ J— Jl 

UPDATE ON Part_No FROM Purchase REPLACE On_Hand WITH ; 
On_Hand + B-> Qty 

.j*JI ^ r LkJI lifc 3-^.^JI £»UJI ^^J **^ 11 J-^W J* - c-- ri wi -*- J 

.( Inventory ) oj^ 1 g-* 1 ^ *-(>** w**^ 1 



JJLo ^Jj .oUa^UJJ Ji> f biS-l J[ ^ ^ ^W **!P u 2 "* ^ 
oUL, J* ^^ JL. -Lai *L- ^ <~> •( Library ) L^ll oUU U*l! JJAJ 

.jijii r-i j> J* i*=~ J a*~ J"! "^ **»> J** ~ WI ^ ji ^^ 

. ( Topics ) oU^il • ^' H • ^' C* b ' ^ J ' v1 ^ 1 J ^ 
UUJI ^l* ^ ( Structure ) LiUI Ji^* *-->. ^y •( Abstract ) ,,-iJlb 
.u S^UJI JOWI JiJi, (Libl.dbf ) ^i- Jill ^-5 JA» ^^ ^ -^V* 



^lf 



rr 



*h* V** 



Structure for database :Ci Libl.dbf 



■illl 


^^^B^^^^ 


■■HfHH 


■H 


1 


AUTHOR 


Character 


20 




2 


TITLE 


Character 


20 




3 


PUB 


Character 


20 




4 


DATE 


Date 


8 




5 


TOPICS 


Character 


60 




6 


ABSTRACT 


Character 


254 





( v - r ) j£i 

iiUi, .(Abstract) ,j<aJJLU \jj> (Yoi) t ^a r ^j ,*; *;i ZJUJI *x* ^ JiaOL, 

jjL» il^j js*-j ^^xJI li*, .^>JI JUI ^yj ^-aSVl JL^JI J1*j i.uJI IJL* £i 



»lb Jij .^jL. olxT j£J Imu> ,y> Jbjj ^ ^oiJL. LLS" L^lk. j^L, a3 j^J, 
lift, .( memo field ) oUi>^UI Ji> ^^ JjJbJI ^ >T ^p f Ij^-I ^ iJUJI 

AXc I4L3 ^uj ,i*.\J\ JjfcJI ^J li^ (£.- ...) ^ il^ ^^ J^j^JI ^ ^jj| 

j^i >T ( Word Processor ) oLtf ^JLw r biiJ j^ jj: dUi j-. ^1 «Jj>kJI 

•( DBase m+) g-*!^ £» .jii^x-ll 

ol^.^UI JJ> j.ljLicL-1 juu ( LM.dbf ) Jill J5L» j^, ( r - Y ) JSLiJIj' 
^ LIT ( \ • ) pJjJI ^^u^, g-b^JI oi JS^iJI 0- ^^y •( memo field ) 
Li*, .o>> ( l • • • ) ^ ^^ LUi ^^u *ji ^ ( Abstract ) olk>}UI Ji> 
( Auxiliary ) ^L- oLL, Jj*15 OU ^ LLe &u Jj^JI li* ^ ^^ L. £i 
^i£* ^ «^UI jj> JOS JJfcJI U» 0^ o&> •( -dbf ) ^-Jj ( .dbt ) mLul.1 j^. 

.J-»Vl obLJI »jitl5 oLo ^ 



rr 



a*'* 11 tM 



Structure for database Lib2.dbf 



■Hi 


|||H?Bi|^^^^^ 


^^H 


|HM|1 


llPp: 


i 


AUTHOR 


Character 


20 




2 


TILTE 


Character 


20 




3 


PUB 


Character 


20 




4 


DATE 


Date 


8 




5 


TOPICS 


Character 


GO 




6 


ABSTRACT 


Memo 


10 






( r 


- V ) ^ 







^ iJUII a* ^j .( Ctrl-PgDn ) ^UL. J* JjJuJIj olIi>Uil Ji> J^ jijll 

XjI^LII ^ .1^?! jll*, .Ji»JI IJu» oUU JUi? lj*l> iiUJI jv-ojj iiUJI jw* 

^Ui* jl ( Ctrl-w ) ^Ui- J ( Ctrl-PgUp ) ^Li. J_t J*JLiJI ^ 

.iJli 5^. JUiVI iila Jl ^j>Jlj JJbJI IJUb c»\iL. &£cl ( Ctrl-end ) 

£j\jyJH~& jjfb -Jlfr J^2mJI *^^ U^-r^ (J* ( LIST ) >»Vl »U»wLj JUX- J^Xj 

JakJI IJl«> cjLjjI»w> jiJ^. iljj LoXLft ^SJj .( memo ) U£ ,^k; ,>£Jj ol&>")UI Ji> 

: *L. ^tf ( LIST ) jfi\ j-. Ji*JI ^J j^ ^ 

LIST OFF Author,Title,Pub,Date,Abstract 

( i - V ) J£jJL g^jll j|k; aJUJI u* Jij 

LUtf" fSa olii>^II JJbJ ( t- ) ^yJI JbJ*=J ^LtJ- •( SET MEMOWIDTH ) 

: JUI ^1 

SET MEMOWIDTH TO 40 



fi 



^I^JI £ M 



Garton J. T. Decision Support Systems Byte Magazine 03/01/85 

This article discusses automated Decissions , Support Systems used in 
modern business Mini and Microcomputer systems. It includes a 
review and comparison of several currently available systems , both 
as support , knowledge Maker , Mind games and Decisive. 

Franklin B. W. Automated MBO MBO Monthly 05/01/85 

Describes several automated systems that support Management by 
objectives (MBO). The basic theory of MBO is discussed, the 
several MBO systems are reviewed. 



{.t - r ) j£a 

JuLS" ^iL»j £^»,i iSjjki JJLLJI olii»}UI u *j} c^j*} ^-j •( Command File ) 

: JLJI ^b^JI 

* - - Sample Program to print database with memo field 



USE Lib2 




GO TOP 




DO WHILE .NOT. EOF0 


? "AUTHOR 


:", Author 


? "Title :", 


Title 


? "Publisher : 


", Pub 


? "Date :" 


, Date 


? "Keywords 


:", Topics 


? Abstract 
? 




? 
SKIP 




ENDDO(while not eof) 



ro 



^IjjH fiji 



.( - Y ) J5LiJI Js l*^3\j)\ OliLJI ^fk3 ^■l3 / JI li» JUAU JLLtj 



Record no. : 


1 


Author : 


Garton , J , 


Title 


Decission Support Systems 


Publisher : 


Byte Magazine 


Date : 


03/01/89 



Key words : Support,knowledge Maker , Mind games 

This article discusses automated Decission Support sytems 
used in modern business. Mini and micro 



Record no. 

Author 

Title 

Publisher 

Date 

Key.words 



Franklin B. W. 

Automated MBO 

MBO Monthly 

05/01/89 

Management , MBO , Microcomputer 



Describes several automated systems- 



( o - V ) J5Li 



n 



*-«j*»tM 



LIST FOR "Computer" $ Abstract 

ollbOUl Jjfe. J» ( Computer ) i-JT J_c ^jj^j ^1 o^U-JI &*. ^^JJ 

: 3JLJI *K-J' j*> -£>*, ilWI u* ^i ( Abstract ) 

Operation with memo field invalid 

Jlill J US' ( Topics ) ,^-j ^JU >7 Ji> f L^iJ ^ ilSLill u* £**Jj 
>* ^v" &'* -^ c^ w^' ( Topics ) g-bijU ^j}j jaju ^j ^ ,i^» jjLJI 

: JUI yjfl Ll^ jll^ "ilLJ 
LIST FOR "Computer" $ Topics 
Ji> ^ ( Computer ) US' J* ^^io ^1 o!)U-JI £**> obL, ^^ ^ 



rv 



gjy„U »|>lll 



JbJWI JiaJJI 



a^jr^^r 



r\ 



^^^ Mill «&^^m1 

^i l^L&iJ ,>£*j .^dl ( Techniques ) iil^JI JiLyJI J-c ji^ J-aill li* 

OljLJI iJLfrlj kiLa J^Ai- ^JW jLj ^X. £t?vJI IJL-fr g^li^JI JLuL£ ic^w ^ »j*^ 

Jjj^aJL g-«Lrr" *-k£ c^i A lij •/—£" oUUI ^ L«LI JjJu— j jl3 iiUi jl »£»*> 
J-oj JLaj J^oitl lift ^ Lf>j-" |^r* l*~" **lx»JI Jjl—jJI »UwI.J JLLc Lol J. J,..M 

fcl* Jjlj .ObLJI JJLtU iJJLo *^> ^ L44 jljj Ljjj Sjj-U-o Jil5i Jl bL*JI ,^aj 

.Jill o}U- (j^jy ,j» ( Index ) u-^iil ^ L&lJ j* JjUjJI 

^j-ij^iJI J.x^?».| > - V 

I^J %*&** ,>*• «-* l ? i 0* Jjyj oL-,UJI o-ft h j ^ t** L® ^' ^~* t^-r* 1 -v^" 
y^ *j%La lyJuf ljLSUI CtUuL* jy Jj^U ^ JjVl « iloiJJ jU/u^ JLfi «j*mJI 
JU il*JI jli (^ ijL^JI j15" lilj g^^ll II* Jji ^j^J ^1 iaJuall Jl J-ai 
j>T (P iyfjli ^vfUl Jl »^L-« ijLfcJJI tr* 3-Jlill iLrkJIj .*JLyJ» »■*-« Jjj£-J 

p3 >UI i»uuJI ^j jbJbtfj ( JjJJI ^ ) US' ^ ^^Ul ^ ^i^Jlj v bSJI 
Li* jV l^-J" L5, jib ,^1 vjliSJI ^^ ^ i^UI ZJLc, .LkjLJI »Jub Jl .jLaJlII 

.iJjj^U ^U+ll y^ill* l*V» Cx&i lt"^' 

JL* ojX: *^*> LjyC .^jJI ^ jjb ( DBase ) iJbU g-.!^ g* ^-*^ L*j 

C*JI uj^IUI oLJI J* ^jz^ ^Ul J*uJI Jl Jj^-jJJ oiUI o^k- ^ J*- J5" 
J* Jj^ <JJM J*^' J^ «l^ ( Index ) ^.jv tiL. «Liil ,y» ipliJI UjJiUj .jllc 
j-j^UI IJL* JiU ^^JLkll jLJI ^ .i^Jlj ^l. ^Vtf -llc ^*J| V ^1MI LJ| 

.J»cJI la* Jl oUill ^ aJ JjUII Jj^JI ^j JUJbJj 

.( INDEX ON ) ^Vl r IJL^-L ^jvJI .Lftil pi ( DBase ) SlsU g-U ^j 
: *L. ySVlT obLJI Hjlc-G JL. g^ jll* «u-,I iUS^ ^^iJI li* Jj-ij ^ U" 

USE Cadets INDEX Name 

.sjJkU jLJI ^ i*JI „i ( SEEK )^l jl ( FIND )^l p Lis-l ^ US' 



«-**-* J* ri Ji^* 3 <i' J 1 *-*! J! iiije a--^ 1 «-* L » j^* o' <^-> oLLjji »i* .1^.1 

.^j^ill IJL> Jx. oU~JI iJLC.13 

JL* jLi Ci"5U-JI v-Jh ^ 0-^1 j.ljLiwL-1 U^jj jjXll icj-JI JI oLi»VL 
»lc«JI Is-jm OjLtuij ( DBase ) HjU g-»l^ Ujip ojU-JI ,>e. <£*JU ZiH^a I5j> 
Ji* ^yi lLjvJI "Lcj^ iJjLLoj iiLidl £^*JI jjj» ijij-t *-fll ^-J dJJU .Lfl^j- j-« 
■LJ-'J S-tj-"j *« Li5" ^_a jup ^^ijl Ju*»UI LLjJiJI n^ljJI Jai»t-» j^S: ^> *i>J» 

.J^w <JJ? Jx. ,sy^i (Test.dbf) *— I oU- Iju-13 «JL« ^La ^i ,j2>>i; }Lt»i 
jajjs. il^jj ."iUL. ( Mohamed ) ^1 J^ ^^o o^U-, iyLc. JL* ji ^jJtj 

J,,S Jli-tf ( FOR ) Jul? t- ( LIST ) ^Vl f LJc-l pi J^l U^JJI ^ 

: dUi ^j: JLJlxJI j>-JIj .^*ji 

CLEAR 

USE Test INDEX Name 

ACCEPT "List what name ? " TO Search 

LIST FOR Name = Search 

: JLJI . JI>JI Jiuj ULill g— r- £-loJ' li»-Js*a-Ji*j 
List what name ? 

J^l s/lill ^- iP ^J^ r> 'K*' (Mohamed ) ^1 JU»I -^j 
^JJI cJ^-^'l li*. J- ^ *=" t^ :<=**-« ■=*** ^ J ( Search > 



£Y 



£_4J4*JI *l%jll 



^jiii r LL^-,l jllc ljLJ rr Jlj* dU^w L^ .( Floppy Disks ) fcjil ^L^Vl 

.( Hard Disk ) 



^1 ji ( FIND ) jJM f ljLJa-l ^ ZJLJI »Jl* ^-iJ JljL^J S-iUJI *Ju>JIj 
^IjLiw-l ^ ( Mohamed ) ^-.Vl J^ ^j^j J*«« Jji pS* Jlo*j ,p ( SEEK ) 
: JJi ^jj iJUl jjkJij .o^U-JI JSL ^^J ( WHILE ) 

CLEAR 

USE Test INDEX Name 

ACCEPT "List what name? " TO Search 

SEEK Search 

LIST WHILE Name = Search 

yJLJI ^jS/l f L&iJ i)U ^ ^Ijj ^ji <y dUi j^i, ( Floppy Disks ) *ij\ ^(yfrl 

.( Hard Disk ) 

S-JS" ^-o ( LIST ) j*i\ jJjlJw-L *^j jl jiLj dJi jL» JJfcJI llfl ^jit 3^3, 

( WHILE ) j ( SEEK ) ^i\ r U^J ^ ^^1 f Ijl^J ^ L5" .( FOR ) 

: Jlill JLtll JLJj-b -jii^, ^jJUJI ^j JjiJI r^i>j^j .iJL*JI iJ Jij .UiuJ 

^jjUJI JJ> ^ £-*-« ^jjlj ^r° ' JL ~ ! tr*" £»}L*w J' 0-^ *1**~}\ iljj *jl ^j-ij 
LJi" £« ( LIST ) ^Al r L^L Ijlj iJUJI »i» ^ .>T j^U, ty £U3j ( Date ) 

: j?i\f (FOR) 

USETest 

CLEAR 

STORE" ■ TO Start .Finish 

@ 10,2 SAY "Enter start date" GET Start ; 



it 



PICT "99/99/99" 
@ 12,2 SAY "Enter ending date" GET Finish ; 

PICT "99/99/99" 
READ 

STORE CTOD(Start) TO Start 
STORE CTOD(Finish) TO Finish 
LIST FOR Date > = Start .AND. Date < = Finish 



..j&lJLI 



: IJLJI j>-JI Ite & tf>Nl ^j>JI f lte~\ Ji*j 



USE Test HSfDEX Dates 

CLEAR 

STORE " " TO Start , Finish 

@ 10,2 SAY "Enter start date"; 

GET Start PICT "99/99/99" 
@ 12,2 SAY "Enter ending date"; 

GET Finish PICT "99/99/99" 
READ 

STORE CTOD(Start) TO Start 
STORE CTOD(Finish) TO Finish 
SEEK Start 
LIST WHILE Date < = Finish 



jui " a l ^ .( Start ) 2-M &M > **» J^ 1 ** Vjl ^- ^' 
uji ~ Ijlj ^i dM ^ r= ^' * * ( Dates >6^" ^ <> ^ 

.(Finish) > ^ W feW ^ (SEEK)^. lU* ^ H ** 

^«)Xm rS^ ^ ■*-* * * * (SEEK) <* " ** 



u 



>I Jl JizL; ( Record Pointer ) o^U-JI j-ij-o ,3V .0%*-, Ji jaySi g*^>jJ\ 
fcj £**3 j>i ii^l» f Ijl^c^.1 SJUJI »jla ^ J^ub tiUJJj .( End of File ) «-Ull 

USE Test INDEX Dates 

CLEAR 

STORE " " TO Start , Finish 

@ 10,2 SAY "Enter start date" ; 

GET Start PICT "99/99/99" 
@ 12,2 SAY "Enter ending date" ; 

GET Finish PICT "99/99/99" 
READ 

STORE CTOD(Start) TO Start 
STORE CTOD(Finish) TO Finish 
SEEK Start 
IF FOUND0 

LIST WHILE Date < = Finish 
ELSE 

LIST FOR Date > = Satart .AND. Date < = Finish 
ENDIF(not found) 

j-oSl flJ-*^~l 3-ijJ" 0-*- Vj-^I tr^ -JL j^l <Sj±\ J-ijjJ? JLi»j 

: VL, jN\f JJi, ( SET FILTER TO ) 

SET FILTER TO DATE > = Start .AND. DATE < = Finish 
LIST 

.( AVERAGE ) , ( SUM ) « ( COUNT ) Ji. i^U^II ^.IjVl ^ JL* 
V>UJ "*ij .i^ I>jju i^U>JI IJUJLJ UJLL3 cu5j JJLC UJ 1> S^ ^IjVl »i*, 
: ^Ul c^Ji LLT ^ ( Mahmoud ) ^1 J*. ^.^3 ^1 o^U-JI iji* 



£.0 



USE Test 

COUNT FOR Name = "Mahmoud" 

.(H-VI U* Jut JjX»w OjUw » 

: JJUI ^l_,Ml Jul& |j> IjjJ" ifjju ojjil lj* JJLC 

USE Test INDEX Name 

FIND Mahmoud 

COUNT WHILE Name = "Mahmoud" 

.( AVERAGE ) y.% ( SUM ) ^\ ^ l^LJw.1 

.J,Vl zl>M tffc* oeiJl osJUll oijkJl 

USE Test INDEX Name 

REPORT FORM Repl FOR Name = "Mahmoud" 

: ZjUI ZLjLII ^jj 

USE Test INDEX Name 

FIND Mahmoud 

REPORT FORM Repl WHILE Name = "Mahmoud" 



i'\ 



c»%*~Jl g>~JI £~*UI n - r 

^5Uj • ( Temporary ) c3>« oiLo ^i c/>U-JI &> i****^ £— j a|^ Ujll*. 

: frpjujaj dUi JLii3 

USE Test INDEX Name 

COPY TO Temp FOR Name = "Mahmoud" 

.( Hard Disk ) yJLJI ^JS\ J* LjIs r- Jlj> JI^l-j LJL*JI u*, 

USE Test INDEX Name 

FIND Mahmoud 

COPY TO Temp WHILE Name = "Mahmoud" 

t^j^cu (J-J49 oliJu &« J-lxJI V - V 

<_JjJLkll iLJLjJI \^^> Likpwo L^jjJ O^L*-JI y**3p <J! pW UUi. . £'~*V 

j^Ij ( DBase ) *JbL- *-»Ijjj -^^p oliL> Xa*. ,h»a-.l <^£-j 4JUJI u* ^j Ujjj>l 

.cJjJI ,_>*£ ^ ij*j^J 0UL0 

fJ1\ Ji> J* «Lj ^^ .LuJ ^5Lj ( Cadets ) ZJkJI a*ta g-^ «i *i«i 

: ^W ( Name ) 

USE Cadets 

INDEX ON Name TO Name 



i\ 



: JK (Class) ^L. *3>JI ^ J* .U, ^ .1^1 ^ US' 

USE Cadets 

INDEX ON CLass TO Class 

: JUI jk-JI Joli£j \jut frytjfi)! fCi c£+a 

USE Cadets INDEX Name , Class 

( Name ) JjVl «_ «JULI ji £-> SJUJI »i* ,y U> ^ ^-^ill oUL» ajUS" y^yj 
^ J^-Lcdl j-ljl o- -r*i tf' f lJA=-l J^i •( Primary ) .^-^Jl ^-r^ 1 £r~ 
<__*. ij^ ci^U-JI ^^u ^.li^l op ( REPORT ) . ( LIST ) Ji. o**-JI 

J*> £~J ( FIND ) . ( SEEK ) ^l_,Ml oi L* .IJi&y J>\2\ ^1 > .U 

: !SLL« JUI >JI LtT ^ ^>JI ^W* .^y J^«3 4^1 ISJ, 
USE Cadets INDEX Class , Name 
£=i Lib ^U, .^Jl u-vfUl y> ( Class.ndx ) JjMl iiW c~- ^Ull m* J 

^ * fe.jxill ^ ^>ll oUL- L.I .S^jSill ^1 oliU *^»~- J! j* ***- 
.olsLJI U*U JL. J o^UJJ JWI e^ u ^ tA -** &-" ^ Wi:!a ^ 

^i cul c=i ji> ^ -us r^ ^ a- ^ -^ " u i r* ■** E^ 

: ^IT dUij ( REINDEX ) >Al f Lfe-I { Ujl*! A- o^ 1 

USE Cadets INDEX Name , Class 
REINDEX 



ih 



uljlalC 






l\ 



,UaJI n«n-j .siljlxaC 

•LkjJI ftw L ^> LmjjJLj »j5viJI »jj> j-Uj !»j t^J i»*J xllajJI »^n.<-i" lj-j JiLc 
luu LoJLLCj .( ? |jul j^I j^a ) JUjiJ JL-J jb R^ob^JI Jah^a IXj siLfrj .J_al5j| 
fci* JKy wJ»SI j^jI ) »^JL> J£" JUu 4*Jb jL-j JGlJ jLi^JI ^ IjUy Jlj-JI lift J_fc 
..UiJJ (jiL^-JI ,„^.,ua.lll Jl ijL^JI ^ J-tjj dljlliJI »JLA pj«*i4 ,^-oj .( t^jajjl 

: ^jVIT Lf>j-i ^&»j i»Lc LLu ^^.^Jl CtljSv-j 

• r lkJI ,>- .Jjl^JI jl JUSLiil otj/O - > 

.oU-^tJIj cO^>j1I tji,yi^j2 - Y 

.( Database Structure ) obLJI Ucl3 JSL* ^-— a3 - V 

.Sjj^w* *iJ»j Ifu Ji" ^ijj ( Modules ) iuiji ^Ijj Jl £*L>JI ,*~~£i - £ 

.i^c^iJI gt-ol^JI ijbS" - o 

•J~*ill Ija ^ olji»?JI u* ^ ijaj- JS - ^i jfcij <-Jj-ij 

( Problem Definition ) U£»dl ^ju N - t 

. f lkJU f LJI ciA#JI jl l«l> vjJ^I *>Ctll -uj~3 ^* f lkJI r .,. rt i ^i s>i. Jji 
jy iyji- Jjij .J^-i XJUI ol>»JI IuLj jIT UaIj, Jajl*« 0JL4JI Li* $S UTj 
t ^u II*, .( ULJI ^ oUjLu. " r lbs ) Ji, jL-ii f lkJI p-,1 ^ jju3 JbJbcJI II* 
p-71 II* &j .ZJLUI ,>* i^** cL>w J* J^Jjl ^ f Uii .Uil ijjlkll jl 
^Lai iijjMi j^ ^ }U3 ^-i>s pjo liUil . tLr 2JI ,jbju Lo»U jj^i »■**> 
f .Ux~JJ ^ ol^l*- j.lfc «UjI ^^ILII jl/ Up . r liJ| li^J ^LjJl ( ^1^A\ 

Jl o^JI Li* J-jUj g-I^JI JiLm J* J4-JI ^ ^^^ iJUJI »jjb ^i .a^JLfcll 

: ,yVI J^t-o >jJbb« £>\jk> 
.i-HJI ^ ifi.j*>wi jl ( j* w uJU? oULj lU.g.-^ jjjUj itLU - Y 



0\ 



/UalJI fg.Utt jlAfhX 



.Lu*3 JZ\ ^>i ol>i Jj ol>^II U* JJUw ^ US' 

( Input/Output ) oU>JLlj c*y±A\ JU*p r - i 
( Input ) .-— UJI J[ Jl>il v^L. juj^i u» f lkJI fL „nz ^ UUil ;>^]l 

ji ji>yyi i-Aj" ii>^ii »i* j» ^-Kj .( Output ) jul. «ju. j-^j J y^u, 

^ ^1 J* J^*JI jjy ( Cadets ) UUI ^ oUjl*- f lk ^i "*uj . £ I>VI 

-v-UJI 

... j^Uill ,Jiju o'yjJ'j p-V' J* Jj=*j ( Reports ) SJkJI oliU ^12; - \ 

■c" 

•u'j^JIj (^-7' J^ 1 iSP* 3 ( Labels ) aJMI i>^ jj,U; - Y 

Name 
Nationality 
Address 
Phone number 



oULJl ajo^IS * *— & 



Y - I 



3_jiJuJI Jj-iJI ,>*> i~~dl v*^ Li*j .oULJl SJJ.U au J^i* o-« J-*> iK 
J i-> .iliti <> ^^J ^Jl ( Character ) IJ^JI J^JI w* ( Numeric ) 
j^lI oULfi ^ l*.LAa-l z&ui j*\ ilJL*Ml ^* »L* ^' J^W »>-*• 



or 



Bill jj.m xAjhlL 



< oJLJLI IJLa fjj JjJl?o \*^a •o'jV^ *-&* '^! l*^* *l>vll »A* (^J v°?i> 

.^i^uJI LUtf" ^ UUI i^Li oLo^Lw r lkj ^ ^U .aJU. .Lj i^^JI ijjJUJI JiJI 



USE Cadets 

INDEX ON Name TO Name 



( Modular Design ) ^UlJJ (>JlI r< q-JI 1 - l 
.ojb^ SiJ>j jZkj lfL« Jf ( Modules ) 



g-ol^Jlj 4J— -ijJI g-»ljjJI jux*3 ^j ( Hierarchical ) ^>^\ jXill f JLi«i-jj 
g^lj^JI jjSLj ( Cadets ) iJUl oj^ &L>^»* ^ ^ ^H*j .^l. J^idll "Ls.jA\ 
JLcyUI g^lyJIj ( Main Menu ) V-tA^' a»-1*'I j»j»j »j2j ^JJI j^li^JI ^* ^-'J l 

: SJUI 



Cadets Information System 

1 - Add new names and addresses 

2 - Print reports 

3 - Make changes 

4 - Delete names and addresses 

5 - Exit 

Enter choice: 



g-li^U ^1 ^JjJ\ ^ JbJI J&Ulj 



or 



/Ualll rtf*taJ .=.1^1** 



X 



Cadets.prg 

1- Adding new data 

2- Printing reports 

3- Making changes 

4- Deleting records 

5- Exiting 



CadetsCprg 

Making changes 






I 



Cadrep.prg 

Print reports 
■ 



X 



rep.prg . 
Creare reports 



] 



Caddel.prg 
Delete records 



label.prg 
Create labels 



M - t ) JSLa 



U 



£*\jl»*jlh 



U^Ull J±ajUI 



$«f>*if *jU£ 



00 



( DBase ) ibU £-.1^ j\ ( DBase III+) g-b^ J*> ^ £-1^1 kA£ ^ 
s>\/i\ J* ,£^0 ^1 ( Command Files ) ^.1,/sfl oliL. LLT j;> ,>c. tf >Vl 

.o^Uiil J&d\ J-JLjJL UjlAs ujjikil 

ol ^ -^IjVl oliU i,L^ ^ ( MODIFY COMMAND ) ^\ f -U^y 
g-tlij^i ,>»UJI ( Text Editor ) .^biJI j^-JI J-JLfc Jl ^i^, j^H li* 
j^Nl jOiiiw Li" .l^Hj^i-iS, j-«ljVl oliLo Lb^ jlL^ ^t pi ^JJI ( DBase m+ ) 

.^IjVl oliL. J-Ais ^ ( DO ) 

Ijl*j .4^ ^UJI ^1»JI j^all ( DBase III+) £-li^J op t^?! J~- Li" 
,UJV ^Ui .( MODIFY COMMAND ) y?i\ &J, ^ «L&jj pi JiiJI £*^ll 

: JUI ^.Vl Llii* ^ ( Test ) «_1UI 

MODIFY COMMAND Test 

jtliSj .L4J5U j-«ljVl SjL^J LJU J-iLi j^ki JUiVI ^Ui* J* Jii^JI jlla, 
»i*j X>\£3\ ,y jXkJI LfSjpb jx. pi ,yJI jsjjUII g-i«>3 ( Help ) »ju.L«» Ju5l5 
.( \ - ) J5LliL £i,jL\ JjjL^JI JAi ^ l^i5l£.j ^i pi ^lill 

yfltf ^-oljVl oUL. LL^ J* l>i ^ ( Test ) tilll ,>. ^>- JbLS" c^ 

: NU- 
CLEAR 
? "Good morning" 

p5 .lfL.U3 ojIIjII ojj>JI J{ Jj-»jJI ,y JjOsjJI ,y »ij>jll 5^-aJI £-3U* f L»«iJ 
«-M ,*>* Ji tf*Ji 1*»j •( A W ) Llrf" jf ( A End ) Jut* Ji> ,>* uiUI *->* pi 

.2LUI i^i- Jl liyJIj ( Test ) 



oV 



gAjdUUaJa 



iijijjl 


-till 


JtSl Ijk- ^jll dL^w 


E J f 


Ji-V !>_ jAjll J^ 


x ji J, 


jLJJ li^ ^ijll oL^j 


<- J S 


0^ l*j> .,Ajll 4o»w 


-> ji "D 


jAJ^I Jj* «-V*JI jt— « 


G jl Del 


.ij3>JI LL£JI J\ (Ins) «l^fl Ul> JI J^l 


"V J Ins 


jW 1 J' **^ ^Ajll &,_?* 


"F ji End 


jL-JI JI US' jijll dL^s 


*A ji Home 


^4>ll u^ JU- >- *iU,l 


*N 


j-ijil (jCi **lj 75—0 


*T 


j*i>ll jlSL* jh~, Jt-wo 


*Y 


j-»ljjl kJlLo ,jJJ«J 


*W ji "End 


JUll ^>j>u jji JliUI Ij-ij. JJ ^>>jJI 


"Q ji Esc 


(olkv^UI JjA> u JiLc .J^tl^i) ,^aJI J-S^iJ J^ju 


*Ka 


,jaJI ^ Lljw JuI5" ^x. liotJI 


*KF 


I^jlc v^jkJI *~» ^1 iJLlJI USUI ^ISLo jujk^j 


A KL 


j-ijll jlSLa ,y (js-jl^ <-&* Llj5 


*KR 


j>l *— <Ij j?-l utLo j-i (J?*-" CJlLo IjuS 


*KW 



( \ - o ) J£i 

^ Olll IJUb ^jJij i\ji L.JLL£j ,_illl p-V ( prg ) jLa^VI ^a. g^U^JIj 

: ^1 *j& 



oA 



DO Test 

: Jrt\ jy$> 3 iSLJI £—. Ja*% JU-iVI £liu. J* J*i^iJI JLi*.j 

Good morning 

LiLJI jt-*; iju <i-> . 1 >j>«JI Juiw r U ( Test.prg ) g-^li^JI J -k>^ 

.j-LJI >-JI ^^ ^ ( Clear ) 

: JUI >-JI iliT ft, "*L> £-1^1 IJla JjJug i\ji Ujllcj 

MODIFY COMMAND Test 

.l$bjU5 *Ly L^oLS" JjLJI j^k-JI jfkS SJUJI »Jub ^j 

tLy IjS'li j-*^> ^ *jI>)" »JJ> &J* 2 r> *-^j jLl^j'j .J&i-JI Jlj-» LjJLLo ,3j^j 
i yij fr : .<a.*Jii j-u vtoJLxJI a<~w IJJ>j .j,:.^.i-o ZJLx- JUjLj «JLj ^ ^ fcd il IJL* Ju^j Jjt 
J^fcLUI IJla ,>^~ ^ji L^LmmI *^j j-aljl JJ-c- JUaj .dUi J_t »Lj L^_o JJ* 
Jj>Vl ^ L$JLt eJ -aJI C UJI ^ >«ljVl »Ju»j .<-— UJIj j.jlJclJI ^ ( Interaction ) 

.XJLJI 

( ACCEPT )^-Sfl \ - r - © 

jli-JI kUS" j»^*i ^*J •tP> > b^ Ji*^- tp *^V' *J* L>iJ^- i (*J <LH—jJI 

: JWI 

ACCEPT "Send report to printer ? (Y/N)" TO Pr 



o\ 



: iiliJI Jft ZjJUII 2JL.JI ^ Jl>iVI c ti. J* JaiiJI jll^j 

Send report to printer ? (Y/N) 

^ ~ tj kid\ lA>i\ jjSO UXLft 4^ljLiwU,l J-ai; ^1 IJl»j .( Pr ) jJCll ^ 
JcSJj AJiJjJI 4jl>V' Jf*i^ *" U**i^ '"**J .ijiJLC C^-Jj *^>J> »JJOL«ll 

.lijx. cotf jJ ^^ ZJj> !»*# iA>)M »i* J-«Uj 

( INPUT ) ^1 Y - Y - 

>LLy ^...JJ SJL-j jS.yu £^» ( ACCEPT ) ^Vl A^ j-Vl II* 
fJ Li^JLI LUI j-. J-L* ( INPUT ) ;A\ c^j .IH-JI a» J* oUJ 
tLiiL p> 4j JjiJjt 3A>"yi CJli* lili .LiJLft J LJj> cotf .(>- Iftp ty*-^. 

: JUI >-JI Ltf jSUj "*Ui .^Uft jsil* 

INPUT "Enter your age" TO Age 

: iiLUI J* *JUI XJL.JI j^iJ J{ &k U*J 
Enter your age 

. t j^\ o** &> I/Ii ji*^ .Liik r A 

(WAIT) j_-Vl r- y - o 
->-- > ( Pause) L3> liOl g-M ^ ^ ^ ^ IiU 

Jltf ** *& **- *to *» Jtawi- > XV- -=»Wsf 5-W r^ 1 

: 2UUI XJUJI j^ J! &Ji la *J '^ *«^ 



Press any key to continue 

.( Default ) i-^ull i)L,JI ^ »I*j 

WAIT "Press any key To return to main menu " 

WAIT H " 
<Jj*}\ &£& V (*^ (Pr) l^'i j?*—* <^j ,y ^uIjlmi^I j£»j Li" 

WAIT "Send report to printer ? (Y/N)" TO Pr 

IJu» r lo*ti-.l ju,i lilj .Lij> I^Jtu jj5L »}llj[ fZj ^JLII ,^1 II*, 

: jfi\ Vc£ pj . ifr;, .,11 ,>* JuiJLt Lwj JLXlJ ^ j*i\ 

WATT "Enter your choice (1-5)" TO choice 
Choice = VAL(Choice) 

J^. tf>i>ij ( Choice ) Jtj> ~*jS\i j^u « Lul ^ ilUJI «JL» J»j 

.*jixc JLJ Jl j^iill lift Jjpu pi ^ f jiiaJLI aIs-ju ^Ul (J^JI 

(@...SAY...GET)^^/I i - v - o 

jUislj f a*^JU ilL,j ^ ^i JJLUI ^IjVl Jl* '^-Vl II* f jL^ 
^Sfl II* ^lj .j/ls jjzj, ^ LUVI »I* .^^ (J ZJL.JI u* Jo Jul>?l 

.( @ ) o^JI a*. l^LT ^ ^1 cL3la>VI 



U»l ,>>3 ^ dUi jjo ( READ ) ^.'Vl (.jl^u, L* .y i^fljji 
^ r oiwLJI Jl> ^ Uux. !AiJ -..jUjI j«. ^JUI jjidl 11* ^ r ^uii 
^ ( Choice ) jjiill ^i jUsi-jfl IJU j^w, ULill j- Vj Jlill jL=>YI 

: SJUI jjkJI itf 

Choice = 

@ 10,5 SAY "Enter choice" GET Choice 

READ 

iJL-jJI j* j* fl ( Choice ) ^iJuJI ^jcX\ .LiiL Jjlj ^1/iH »JL*j 
.>* £^^1 J*^ r 5 -a"-* 1 ^ 1 i>^"j j^UJI jkJI ^ ( Enter Choice ) 
.( Choice ) jJci\ ^ h^j*^. fj^y ***•»*• **=3 ts' Jl>*! fj&i-ll 

(jjj JLoLc ii-aj g*«LJI ^J .Lm^JYI L^Llll JliLiVl jl>I 3-yl^ll iZUJI jus 
iL-l^j ( DBase ) liiLc «»«Lj ^ L^j^j *^y .L^>L> LLaj ( DBase ) IbU- »*j^ 
.( ENDDO ) j^iL ^f^j j*i\ \m> oU Jjuj ^j .( DO WHILE ) ^.S'l 

ff-aUjJI lift .^JLo ( COUnt ) A*-l g-ob^i JjL^" (hI; AjjIjS^JI JuUJI LLJ?} £~£>jJj 

CLEAR 

SET TALK OFF 
STORE 1 TO X 
DO WHILE X < = 20 

?X 

X = X + 1 
ENDDO 



: ZAliJI J* jft\ j&i £-M **» -^ -^J 



1 
2 



1Y 



&**» 



3 

4 

5 

6 

7 

8 

9 

10 

11 

12 

13 

14 

15 

16 

17 

18 

19 

20 



j/i\ oUi Ji, .iiLJI £— Jl ^ijj tflll ( CLEAR ) ^L g-b^JI Iju, 
.JluIj .LSI JLiLUI J^ j^JiJI ,>- £-0,JI JJL,j £*j ^JUI ( SET TALK OFF ) 
IjljJ ,J .( 1 ) 5— -ill .jLLtlj ( STORE ) jJi\ ikJ_* ( X ) ^1 .Li3l ^ ^ 
JLL3 yj .juII l> ^ ^Sll liftj .( DO WHILE X < = 20 ) ^>% < ti \Jcl\ isUJI 
^jL-j jl ^_o j>-s>l ( X ) 3u-3 CJlS" UUs> LbKi;" j^~--j ^l 'L iJ \j$cl\ ZiL«JI 
^.Vl pi^-. Li" .LsLiJI J^ ( X ) J-J ^^ Jl jijj ( ? X ) ^.Vl_, .( Y • ) 
iiUII JLiu Ifei pi S^. J/ ^ j*.|^ ( X ) ^Jlill i~3 SiLj ^i ( X = X + 1 ) 

.lyLCJI iiUJI U«i iJ*,; ( ENDDO ) jJi\j .iyLCJI 

oLfc <CjLxS" |*Ij j_oVl IJL*> jjj ZJUJI »Jub ^j .LfJLr. Zi**^ oLJL-c. .Ui'Jj oULJI 
DO WHILE .NOT. EOFQ 



•\r 



.( EOF() ) JUI U«s Jl J^i ^ jt uu, s-^fcll iiUJI JLto ^ LU, 

.( END OF FILE ) jU=il ^_, 

( DF ) ^1 aL-Iji jlyill ilijl t - d 

Cr^-H c£~i) -*~** ca\^jUa J* ,L, j\j iUwl il^ L»ju* ^Vl U* , ^.- _,_, 

: ^IT ^1^ ^ ( IFTest ) ^ wj ^ iUS- Ji> .y, ^"l U* 

MODIFY COMMAND IFTest 

: ZJUI jjkJI 3,1^ ^ U&JI Lili ^ iJUJI ij* ^j 

********************************** TpT-cf nrn 

* Program to test the (IF) Command 

CLEAR 

ACCEPT "Turn printer on? (Y/N)" TO Pr 

* If answer is yes , then 

IF UPPER(Pr) = "Y" 

SET PRINT ON 

? "You chose the printer" 

EJECT 

SET PRINT OFF 

* If answer is not yes , then 

ELSE 

CLEAR 

? "You chose the screen" 
ENDIF 

dUil .£-LJI J^- olli>^U jLa^z^ jl>~ Ub g^bjJI li* c>* ^>- Jj'j 
P-Ij ^-IjJI ±k^* jJJs J ju& ol^>^ll J*j •( * ) i~JI ^ 0'-^ U*:U 

.isliJI £— J[ && ( CLEAR ) j*% .i*»~ tt£, rf aj3 



U 



£•'*" 



iia£ 



LiLJI <> ( Turn Printer on? (Y/N) ) Jlj — Tl ^.^ Jl <s& JUI >-Jlj 

juu o^l IJl» jlT lili f ^i-JI «*£, iflfl Oj^JI jUi-L f ^u JUJI >-Jlj 
^lj\l itj-*w. JUL- pi. ( Y ) 0^*11 Lyl— ( Uppercase ) ^S o^ Jj aL^j 
^ ( UPPER ) UUI f LAs-l s^lij •( ELSE ) U/, ( IF ) ^\fl ^ ijj-**X\ 
Ij,ju« ji ( Uppercase ) \j+J iJ>»JI ^j^oJII J»al « 1^- **t~^' u*** 3 J* J>~«*JI 
g^brJI fJ i; ( y ) ji ( Y ) j-i >T j> jl f uio-il Ji-»f li{j .( Lowercase ) 
( ELSE ) &, Ij^wJI j-l/Jfl iiiy ( ELSE ) j ( IF ) ^ Ijj^JI ^!/*l jAi 
: U2UI ij-1* ^- j-Vl li* 3olx& g-lijJI U* jL>l $£-, •( ENDIF ) _, 

DO IFTest 

: 3JUI UUJI ^3 p5 iiLUI £-w pi. UUJI a* <yj 

Turn Printer on ? (Y/N) 

J* UUI SJL.jil UL> pi JUiVI C UL. J* -Li-Jlj ( Y ) U* ^ lip 

: LollJI 

You chose the printer. 

.( EJECT ) iolkll J* **Ju, JX ^ ^ 

^^.j iiLiil jc-*j ^>IW f->*i ( y ) j' ( Y ) j^ >T «Jj^ J f! 1 ^ i* 3 '*b 

: UUI iJL.^1 

You chose the screen. 

^uj .(IF) ^L Z^UJI j*\ji\ K*_y>** <lp[ J (ENDIF) UT f j^~jj 
^ ( ELSE ) US' L.I .** U-li ( ENDIF ) US* J ( IF ) ^\ JS of ila>^L. 



to 



£. ( IF ) ^Vl **#, ^il| J^JI ^ £jh, ^i ( up ) JJIjJI f hiC^\ ,>SUy 

: JUI >-JI its' ^ ^UJ .l^UT v^UI j^kJI iA * j> ^ fi 

?IIF ( X < 10, "Less Than" ", "Greater Than" ) 

VL*J\ J*,* {£, ( 10 ) ^ j*J\ cjtf liji ( X ) w ^ ^1 UL* 
UL-yi ^^ ^ ( 10 ) ^ ^1 cjLS" lilj 3LiUJ| j^ ( Less than ) 

.iiUI J* ( Greater than ) 

: 3JUI jjkJI ibT ^ ( IF ) yti\ Sk-ljj JJUJI .i* ^ JLfcsJ, 

IFX < 10 

? "Less Than" 
ELSE 

? "Greater Than" 
ENDlF 

.j>-JI >jl*. J Ojij jj ( nF ) SJIjJI c,i l»"iL. dUj ^j 
( DO CASE ) ^1 aL-Ijj jlyUl iU3l ft - 6 

gUi Mjf ^-> ( IF ) ^i\ j- "STj— * ^ •JJ-" ^«i ( D0 CASE ) J-* 1 

ZjUT ,>SUj .ills c^jZJj ■&** js*z* **^ l*J oVU Iju. ^ jL^-VI g-il^JJ 
XkiJI ij-a-. .y J^l ^1 ~*A* ri d& J^J •( CaseTest ) ^-. -u*w £-1;^ 

.(Dot Prompt) 

MODIFY COMMAND CaseTest 

u* &}i* ^ .tf=3^i ojlcj .( v - o ) ji-iJu *W v-i^i i& &? 

.( *End ) *J£j g-M 



■n 



***************** CaseTest.prg 

* Test the DO CASE command 

CLEAR 

INPUT "Enter a number from 1 to 4" TO X 

DO CASE 

CASE X = 1 

? "You entered one" 
CASE X = 2 

? "You entered two" 
CASE X = 3 

? "You entered three" 
CASE X = 4 

? "You entered four" 
OTHERWISE 
? "Invalid number" 
ENDCASE 

( V - o ) JSLi 

JUI jLJIj .iilill £— . Jl tfjjj ^Lk>!iUI ^jk- J*, £*l:^JI o-o JjVl JLJIj 

: liLJI J* iJUl UL,jJI ^^i Jl ^ijj 

Enter a number from 1 to 4 

•( X ) ^iJi*il j-iJI yi p$J\ IJL* ^»>«3 pi 

t/Vi ( 1 ) tf.»l~3 ( X ) COlS" lip .( X ) 3LJ Jj. .Lj jlyiJI iUjI Lu, fS 

: IJUI iJL,JI j-U^JI 

You entered one 

.viljL^M Jib Jji» *j 



■\v 



$****&> 

: SJUI ZJL.JI ^UjJI j>^_ ( 2 ) jjLs ( X ) CJlf lilj 
You entered two 

3ui£J JUI ^Sfl Ijia ^ oljL^VI u> J- U ji^jV ^ JUil pj IM U 

: SJUJI ZJL^JI jj& Jl ^ y.j .( OTHERWISE) 

Invalid number 

gJjJl 3-~£>dl *U£JI 1-0 

iuu>JI a* of £~*. ( Structured ) *~-$>JI i^L ^yi i^Uf Ij> ^1 ^ 

l$I ^ r «... ~ Li" iJ>(— J A*u>i-aJj »jLz>lj ^LjJI Jl p^>jJIj «_«I^JI Jrkjjl «l»_J 

jl aJLjucu .LjUIj j^\ ijoaJii *ii.a\jj izAs£ c<«" ^pjJI r^UjJI t«lyu p-*^ JlL£** 

.!>UJI '- -«■ *jj>bj 

: jftl JlJLj c-^ i«i^l »■*£ £*IW *f^J 
^Jl ^.Ij^l ,>. J^^. Ji" SJufej j>i3 ydl i*j,\jJ\ oUfe.}UI f la*aJ - ^ 

^L i^UJI jA-JIj ijjIjScJI oUUJI <y ( Indent ) j^kJ' «=»U* 4^ ~ Y 

•£>*•* J-^ 1 y«o ^ ^ «*=■■ ( D0 CASE ) ^'J ( ^ ) 

.ULJLjs ^ JUI ZiL^JI £*ji j*\ olj^b ^.Ij^l jL>l - r 

-cj fij >% .( r - o ) Ji^JJ >il .( Structured ) l^j=i\ iij^l iUI^. 

.{ i - o ) J5LJI >l .Xij>ll »I* iUI^. 

ilLyO (.JLft JfcOL U .j-oljVl ,>- i*^»« JT ii-fej £*>! A-itf 0lJa>X. ij*j 

r 1 * Jl w?*>i .U*j -*U'> J! G^ w^ 1 J^ 1 «> ( Indentation ) Ji-bl) j^kJI 
jl ( IF ) ^&J iJLJI jiA-U L-JL. oUJ^j L^-Lpj 3u,L£iJI iiWI ZJju C j->j 
g^l^JI (Ji*- ^ iJi~ L^ *i,l>JI oUWI jup Uu*j .( DO CASE ) ^1 

• lj> tJjjut IJLfr A^^byOjj g-ibjJI jL^>l aJ^A J«^-aJ 



***************** Librarv.prE 

* Example of an unstructured program 

USE Library 

DO WHILE .T. 

CLEAR 

@ 1,20 SAY "Library Management system" 

@ 3,25 SAY "1. Add new records" 

@ 4,25 SAY "2. Print Reports" 

@ 5,25 SAY "3. Edit data" 

@ 6,25 SAY "4. Exit" 

STORE TO Choice 

@ 8,20 SAY "Enter choice(l-4) " GET Choice 

READ 

IF Choice = 1 

APPEND 

ELSE 

IF Choice = 2 

REPORT FORM Library 

ELSE 

IF Choice = 3 

EDIT 

IF Choice = 4 

RETURN 

ENDIF 

ENDIF 

ENDIF 

ENDIF 

ENDDO 

( r - o ) jsii 

-VI Ji. £3ljU UJL^. fJ ^u> Jus jl5 j3\ ^.IjVl Jh*j {\j±cl~.\ Jl>^L IS 
jLjjVL. Jl UJuto ^ iLyL&JI LiUJI ol ^ju li*j .( DO WHILE .T. ) 



•\A 






-*j>J* ji *La«j, *JI ^>^JI ^j ( Documented ) USj^ U-U* ^u,,v 

***************** Library.prg 

* Library system main menu. 

USE Library 

STORE TO CHOICE 

DO WHILE Choice ff 4 
CLEAR " 

@ 1,20 SAY "Library Management system " 
@ 3,25 SAY "1. Add new records " 
@ 4,25 SAY "2. Print Reports " 
@ 5,25 SAY "3. Edit data " 
@ 6,25 SAY "4. Exit 

@ 8,20 SAY "Enter choice(l-4) " GET Choice 
READ 
* - - Branch according to user's request. 

DO CASE 

CASE Choice = 1 

APPEND 
CASE Choice = 2 

REPORT FORM Library 
CASE Choice = 3 
EDIT 
ENDCASE 
ENDDO(while choice # 4) 

* w hen choice = 4 exit. 

RETURN 

( i - 6 ) J£a 



JjVl g-U^I ZiJ-j ^ &si *jU ( ( £ - o ) JiLill ) ^ilill g-lijJI ui 
ij>^-«j ULs A*w>lj oUa»}W J/ ji J»»OL iX> .JL^jJI iL^LJL i->y&j> *s£Jj 
}U3 JilaU IiS^j ^ Ljl/JI iiUJI Jib j>uJI JS" ;,! ^>^L IS j^lj Vj L,L 
.^j ) Ifijlfjj SjjIjSoII JuUJI SjIju jujl»w J4-JI &a J*ju U- ( Indentation ) 
jj*\ JI J-^j ^ U-ij ( DO WHILE ) j^i\ ch> LJ4 fr*-^ liL^ 
jjkJI Ll^j ( DO CASE ) ^Vl L-ljb jljj^j ^ L^ .( *, ^UJI ( ENDDO ) 
Jeyj>l\ &* L-i y^w cJli" ^dl ^IjVf JIjuiJ |*J Li" .aJu^JI ^-Al. aj jL*UJI 
,>. Vju ( DO WHILE Choice # 4 ) ^.Vl f LUi-l ,j ,£*> .**-,!_, ^>i ^IjL 

.( DO WHILE .T. ),Si\ 

J g-l^l JxL^JL j-.^ ( ENDDO ) Utf u^l^ clli^l f LUiJ JkOL Li" 

ZjjI^&JI CUUJI Jbp LoJUf. JL»l> ZjLzj JLJU II*j .2J&JI hi* Lft «^j JjjIjSO iZl> 

( ENDIF ) UT ji ( ENDDO ) US' juu y^£j oUi>}L. ^i ^i »^» .g-b^JI <j 



V\ 



t**aaN JjUj 



fju^aLull JlaJJI 



(Debugging) c i i . n . W JiLj 



vr 



frO - i N JjL.j 



..Uiii cya, V JL,I v^ tfill ^-Li^JI j^, L. Ijib Ail U^lj 0j £, ^ ^^ 
•i*j .(Misspelling) ^IjbU .>UJI .U«JI Jjl. ih~u ^ a3 U^ \IL% 
<j-j ( Logical ) ZJ&i- .Uw-I ^ j5j .^.UjJI J^jlu ai* IpLL^I J+w .itiVl 

( Debugging Tools ) j^v^ill oljii ,>• U^ vip ( DBase ) iJbU ^.j^, 

.l^i^^r, .LLi-Vl oliifl g^l^Jl J»^ j* j^ jm 

: 2JUI J^sJI JIL.JI ^ U*ll J* ^^ ,p|| g^b^Jlj UAJI J* ^^ 
Cancel , Ignore or Suspend? (C,I or S) 

( Cancel ) jU»-?l - > 

LtUI S^i- Jl iij-Jlj g^U^JI ^jlaj .L*sj JJ rf4j _, jL^I IJL* 
^1 (Private) I^UJI s^UII ol^i. JT iy j S s* UUJI a* Jj .(Dot Prompt) 

( Suspend ) jlz*-y\ - y 

Jj .( Do suspend ) SJL.JI j^Jfc' ^ Ls> ^U^JI ^j Jl ^ jLj^I la* 
g-b^JI JL£iJ aC- US' .i/QJI ^ i4j?J- i^ujl s/LJl ol^Ai. Jki'iJUJI a* 
.aidl S^i- ^ (RESUME) ^1 Llrf j^ ^ c5_, tf f J 

( Ignore ) jL^>l - r 

j>k. yJL JUa UjU^j U^JI J* ^^ji ^Jl J&a J| jL^^I IJub ^ 

•>-JI la* Jx. jjuic- ^ j. lij g-U^JI 

Vo 



.l|>^ J.LJI 7SXJ\ oljU^M ^-ii ^ iJUJI fci* ^ .( Esc ) 

(Memory) i/ljJI ^i^ y - n 
.LSI ( Memory ) S^LUI ^^ ^b^JI .U±\ oUtfl ^i XJUiJI JiLyJI ^ 

: JUI ^-Vl iU* ^ *L. Ck ju. IL* i.jj^ xui 
DISPLAY MEMORY 
i/IJJI c»U*l. A-> j-. ( RAM ) 13jil ^IJJI yi> j,^ ^ JJUJI »JL* ^i 

: JUI jkJI LU" j»i; ijjjJI J* i*^L. s/lJUl «.Lp>« J* Jj-»JLIj 

DISPLAY MEMORY TO PRINT 

: JUI jk-JI iUT Jj^ ,>* rjiill obLJI *jul5 uiLo JSLa ^j* c^i ^ 

DISPLAY STRUCTURE 

US' .i>>_H> ^*> ii' t-JL-i^b U-^ljj'j Jj^JI >L<I jL^>l ,>^»i UUJI »JL» ^i 
obLJI jLftljj oliL. .\^J j»j*1 ( DISPLAY STATUS ) ^.Vl f LiiJ ,>£- 

.(j-j^itl oUL» dUiS'j i>jlill 

( History ) gjjbll ,>>c r - n 

p 1^1 ^^1* >T ^^i UJ fi L«l» I/IS j* ( History ) ji,UL ij-xill 
t$f Jl ^ytJ\ *jlSL.| Jl rf ajj li*j -(Dot Prompt) SluJI i^i- JiU- ^ UJU-i} 

VI 



.^LL- ( | ) JcV ^1 C UA- J* J^iJU JJij .l^i &jLs. >T ,>- Jliil ^ jA 

.jl>iVl ^lii. J*. Jxi-JI (j o^UJl ^1 ^ ^ d>. a*. ( | ) J*\ j^JI 

odll j^lji ji .t-> .( Command files ) ^IjVl oliJL. Jx. j-kuV li* ^j 
J-.VI f L-icJ jl* "rfl ( History ) £-L>Udl »^a cr-» *-**i>^ f-V* 
UJuLj ^ ^1 ^IjVl o^ j^UI I/li j-fjol ( SET DOHISTORY ON ) 

Ui> ow a^oUjJI oo_h liLi .^oL^JI JLJUj J-j ^«Vl II* ZjLS' ,>£-j ^ILUJ 
^1 LUS" ^ p .13> g-bjJI ,1^1 ,y ( SUSPEND ) ^Vl r LU«iJ .^ jj^u. 
j,j*. f~, iJUJI li* ^i, •( LIST fflSTORY ) ^\ J ( DISPLAY HISTORY ) 

: !*JL. JLJI >~JI IJef $J, ^ \jA 

SET HISTORY TO 50 

JLij .Lkl J| tfi^ ( SET DOHISTORY ON ) j^i\ $1 i^-X. <-~, 
(Debugging) ^^-aill ZJLt ^ .L^aVI ju* ,^1^ tflUJU, .s^**" i^yju g-«ljjjl 

: juii >-ji lusl ajs, .,>ai ^yi jr ^Vi ;»u 

SET DOHISTORY OFF 

( SET TALK ON ) ^—^fl f IjJ&J I - n 

JiL^I ^JaV <^> ^L^ rf f ^ ( SET TALK OFF ) ^.Vl LbS" ^ i»U 

.g^ubjJI jwwi3 JLU. |j> ULuLo ,^£j JjL,jJI fcifcj UJLiij .*£; "ijLi- Ji" £*&p ,jlll 

jls ( SET TALK ON ) jA\ Us* jl^^Cj g-L^JI jLjSI *L3I J^Lu liUJLJj 

•Ijiii. Ji" Juitf XLfr iiUJI Jjt _rfii3 jj\ J^L^JI 2joULo ^ U" .g^lijJI JtH«-i3 



vv 



fr|>» 3» JjUj 



( SET ECHO ON ) ^-^l ( \^^\ o - n 

Jx >- Ji" ^^ Jl ^ li* 0> u ^1^1 JLia J-i ^.Vl Ijl* LUS" xLft 
3- .l*irtl -^ ( Default ) „iUl ^yi j| ^Vl nUI w ..JLto JJ liLUI 

: JUI >-JI ^USL dJjj ^.^.a.-JI *JU 

SET ECHO OFF 

( SET STEP ON ) j^.H\ t L&uJ i - i 

.Li^JI ol>> j^^j ^1 JiL^JI iji ( SET ECHO ON ) jXl f UfcU xj. 
*** c> JJ*-jJI Cr^Jj •C^')" Jr- ^ e—LlrJI jLcj .Ul iiUJI Jj. ^k; 
**-» jj^t .LLI j_jjI lip .oljJwJI »ju» JUL3 i*^. ^ Luj- _,4k; DUI 
^Vl f LiiiJ aJUJI (O* ^j 4^L«i Lfijoli- g^l^JI JJ^, ^.t,-..., ^ JiUjJI 
^Li^JI ^3^ ^ uja .11* ^f Ji" ^^ J[ ^j^, ll*j .( SET STEP ON ) 

: IJUI SJL.J\ i&jt. f5 L3j> 

Press SPACE to stop,S to suspend.or Esc to cancel 

iuLd ( Space ) oliULI ;>— J* JwjJI g-ljJI JaL»J ilUJI u* ,y ^SUi, 
jl 3LL. ,>-** U» Zfa»3U JULt ciUij g-bjJI JuLj jJuxJ ( S ) U* jl JUI ^.Vl 
£-«>ljJI -LLkl ^-Ij IjL»j .g-olj^JI j-» £j>JJ ( Esc ) vjj^" c* -1 * - * «J* -k-"~*" 
tiLliTI Jji Mf.l...j L-o g-oLijJI J-iw .US! ^IjVl JLis JjL-y j>fk J* *£»=JI 

.^oUjJI ,J ( Logical Errors ) JLikJI ,U»>Vl 

( SET DEBUG ON ) j .Vl f 1jAsJ v - n 

j-«Vl £* -J&i-j j*j .a*jUjJI Jl £*Ij,JI juto ^Ijisi JU$ j-»Vl ti* jai^-j 
:>».•>> g-lijJI ol>> Lutd (SET STEP ON) ^-Vlj (SET ECHO ON) 



VA 



.Lai j$& j$\ ( Error Messages ) .UiiSfl JiU, ^>i £~j»j3 f^ -J^" U* »y 

( Data type mismatch ) 5 lU^JI \ - a - n 

JLi^. obLJ" JL^jjLJI oLjLJI ji "iLL. ojJb^ iui^JI oUUJI 3JUU- 

: JLJI >~JI il^ jll* ^U .lj&», 

LIST FOR Date = "01/30/90" 

Ji> ( Date ) Ji*JI oV dJi, ( Data type mismatch ) UU^I ^ks 
oL j^i ("01/30/90") o-i^l ^>" <-•' •<>*• &jlJ <> tfj^~ i>i)b 
ij-ju tiUi g^UJ, .( Quotation Marks ) O o^i^i\ oLOU ij^J ^^ 
: jfiK i>Uil LJyJ' *-J" J! ( Date ) j^UJI Ji^s 

LIST FOR DTOC(Date) = "01/30/90" 

( Invalid function argument) 5 IL-^I y - a - n 

: JUI >JI Llif jllc !*±J .>T Up ^T,,,^ 

? UPPER(X) 

u* ^ .( Numeric ) juajui i*-5 J^ j>^v ( X ) _^JLdl jl ,>>£> 

: UL,yi ^ ilUJI 

Invalid function argument 
oj^> JI X-vJI o^Uall JipcJ Jtii f JLk^-3 ( UPPER ) XJIjJI $1 dJi_, 



V* 



.(Uppercase) >^. 

( Unrecognized command verb ) "* 11*^1 r - a - n 

^ iJUJI *i* ^j lk> j-Vl .U* Z,Ltf .u* iiU UL^I u* ^ 
c^-i, .( Syntax ) ^Ml II* ii* z**!^ ^ US' ^il .U* i«.|^. 
j£, i-,UJI ( Syntax ) i^JI jujuj J ( Help ) iji*UI oLtLi f L&sJ 

.^i 

( Variable not found ) '* JL^JI i - a - *\ 

(DISPLAY MEMORY) ^i\ f La=J -^ iJUJI ua ^j .^U^JI 
.^SLj L5" .3/UJI ^ »i>>jll olj^iill «LJ Ajyuij »/IAJ| oLyi«-. ^^J 
cjiL. ^i J>UJI .LJ ^ ( DISPLAY STRUCTURE ) ^ f fcUiJ 

( Record out of range ) 5 il^ji o - a - n 

i >?j-° v^ ( Record ) J*i— Jl i_)Ultl ZJjUv* jjlc UL^JI «JL* ^k; 

: JUt >JI LIS' jllc. "SLLJ .^iUI ^ 

GOTO 99 

UL-ijJI j^fcu UUJI si* ^j .Jaij ^Uui ( 98 ) J^ <£>£»w <wJtJLil jl ,/v^ 

.Jj/jll 



JLw-Ii r>^il u^'^friJI kiLs ^ lk> iiijJL> JLLfr LSul UL^JI tl» yfky 

I»Ij Li*, ."JLLo oLLJI Jjlc.15 oiL« ,y o^L-JbiJI ,j2uu ,l>>l .llc *»ci f Ji* 
.(REINDEX) ^Vl f lj^-,L ^-rfill *lijl bUL *>^U 

( Too Many Files Open ) 5—JLVI n - a - n 

£- .CJjJI ^ ^ C.UUI cy> j-i" iJUi ^ Oift iiU ilU^JI J* ^ 



gi, £•— J ( Config.sys ) f UlJI o\i^\y> «JL» ^ oliAll *xc j^jj ^ 

iji* J^Lfcl g-l^JI J £*cl\ ,>£*. U .g-UJJ itJLU ( Files ) oliill 
)>>w tiJL* Jf J^-tJ Jjrt» ,>*• ijUi |»^y -o-**-» £Jj ^ Zp-jJjII oUUI 



,>& .Lii-7' a* (Procedure file) ol^LiJI «-*L. flaioJ .^^ Lf 



M 




JM **" 




<ULLJI ^^wi i^U^&o |*UaJ 



>Uaii\ A j.nr> 






Ao 



X-..XJU \ - v 

&* *JU i ^ k^JI ,>£*,» ZJLUJ oUjLuo .UaJ **«*a3 jJ> ^-ob^JI IJL* j_a 0JL4JI 

g^L^JI J**ij (.ji ^Ul O o^jj\ ii ^^iju li»j .( Menu Driven ) ^IjJLlI J}U 
j& J! C 1 ^ ^jl> ( DBase III+) ^.b* ^Ui. ^ .^ ^l a^ J| g^ji 

jl o>>jil oULJI JjJlo jl oLojJu-a J\ Jj. Jj.^'wlt ajjIL* oULc. J\ \'rj 

• jUI ... jl *f ^ mi i* 



( Main Menu ) *~*~5jl\ **jUJI .j <?•? y - v 

oljL^VI LJ15 ^^ fJ i ^ill g-bjJI j* ^-^Jl g-bjJ'j -cr-^j ij~.U £-*l^ 
^ U >Tj f ji^Ljl f L.i jfk. U Jji ^j f lkJI yJS ^^ja i*;UJI J*, . f aia-JLJ 

.3*4-0 JS* juiij juu Lib 1<JI ^>^l ^ LS A-oUl 



DO Cadets 



-VI U=SL f lkJI J-iii r -UiJU f yLy 



j&z UUJI »1» ^j <tr --i^l g-bjJI r jj*( Cadets ) <i-> .U»UI I^-i- ^ 



SJlill i^UJI f jiia-JI f L.i 




-ADD NEU NAMES AND ADDRESSES 



2 -PRINT REPORTS OR LABLES 

3-MflKE CHANGES 

4-DELETE NAMES AND ADDRESSES 

5-CHANGE COLOR 

6-EXIT 



HI LIGHT OPTION B¥ USING t OR A AND PRESS +• 
OR PRESS APPROPRIATE MENU NUMBER 

-( \ - v ) j£a 



AY 



,ltol| 






fjli 



.»JUJL> C»}L>w ZJLi»l ^JL^-,„.JJ k^Sj jLSVI IJL*j 

.iJUl LiLLlI ^.U ^^xi ( 1 ) (Jjll *U& 



CAIEI NO 
NAHE 
CL1SS 
JtElIGICN 
BMTfl FLftCE 
H01HEP. NAHE 
FA1HE1 JOB 



DATE INTEHED 



TELEPIOH ■■ 
■ BLOOD TYPE I 




ADDRESS ■■■ 
NATIONALITY 
FATHER NAME 



1IRTH DITE 



■■■■!■■ FATHER SALARIT ■■■■D 
HO OF BROTHERS PJHO SEC SCOOL AUG ESQ 
M1E OF SEC. SCOOL HB HOBBIES ■■■■■■■■■■■■■■■■ 
NEAREST RELATIVE ,ADIESS ■■■■■■■■■■■■■■ 



( V - V ) J£i 






s^asiJLl oi>M* j*^ 1 ^M* r - r - v 



AA 



.IfcaM 



I 



SELECT ft REPORT CHOICE 



1 



1 - REPORT 

2 - LABE1S 

3 - RETURN TO MAIN MENU 



j ENTER VOUR CHOICE<l-3> | 



( r - v ) jsLi 

: JUI Jlj — If jikj . oljUSVI »ift a>I ^j^iJll jL^j Lojuxj 

Do you want (A)ll records, or (Q)uery? 

£*•*■ o°j* J! iPii ( A ) »- i >* J ' ^^ Jirk 0-* ( All ) jL-ilj 
,>c ( Query ) (.L^ai-VI jL^-lj .obLJI »jLtl5 ^ ij>JI i-lkll oU_j 
: LJUI ZJL, Jl ^ J| jjfc ( Q ) J^JI LLT j^ 

Enter name to display 

fl" <>" J^I"«Jjj»JI ff^ ATii j^jj ( Highlight ) J>yZ> Sj~L JJ& £A 

»jJj £*£> Jaju i^—uVI £_o «J^> Jjl ZjLS" UUJI tJL* ^ (ji^oj .t->jJLkll 
<u»UJI o"iU-JI ft5jl £* iJ^JI II^j Ijlj ,_ylll .l^-Vl ^> u^^y ff^lJ^JI 

: JUI Jlj-JI fj&zJLI f L.I j^ki LJ" .1* 

Which one do you want? 
: JUI Jlj-JI ^k» -gULj ^^ !_» Jidl ^"iU .jiuLJI jLoil jju, 



A^ 



illalJI 



Send report to the printer ? (Y/N) 

^j ( N ) i*& Ji*> -ji^JI «-L> ri ( Y ) Oj»JI f ^-„ll ^ lili 
.(£, - V) JSLiJU £-»jil ji ^JI ,>ljWI yi ^^y .JtO iiLUI J* -u.^ 



CADET NO 

NAME 

CLASS 

DATE OF ENTERING AIR ACADEMY 

BLOOD CLASS 

ADDRESS 

TELEPHONE NO 

RELIGION 

NATIONALITY 

HOBBIES 

BIRTH DATE 

BIRTH PLACE 

SECONDARY SCHOOL AVERAGE 

DATE OF GETTING SECONDARY SCHOOL 

FATHER NAME j 

MOTHER NAME 

FATHER SALARY 

NOMBER OF BROTHERS 



6960 

MOHAMED ALY SALEM 

55P 

09/01/85 

A 

13 -ABBAS ELAKKAD 

2603556 

MUSLIM 

EGYPTIAN 

FOOTBALL 

01/22/67 

TANTA 

70.00 

1985 

ALY SALEM 

FATMAMAHMOUD 

600 

5 



( i - V ) J£i 



( Make Changes ) c»bUI J-^ r - r - v 



Enter name of person to edit 
or just press Return to Quit: 



iiliJI 



There is no <name> 
Press any key to try again 

j,LSL. jjhj f x±iA\ 4J>a_j ^Lll UaiJI ^1 ji JLb>^L- t - 
aj JL»UJI obLJI LiLi j^ki ~Si\ Li* ^U^JI -i»u Ujluj .(<name>) 

.ivUJI ywu^- ALjUcJ Ji> Jjl Jx. j-ijll jfbj) 
OjpJI ^Ji.'u jy.jJ.V.T.j <i jf i«— '"5" (jiii'j J^«— ' ij-° j^jI *ilL* d)^5v-| LtJUjftj 

.o^LUI *— ^U JjUII J*«— Jl *3j jLu>^ p_»*j <^> o"A*i— Jl ,l3jl 

i*JliJI ijjG Jj*-JI Jx OjlLlI JjJUcJI «I>>Ij . V^T ..II .ji jl Jl*y 

O^Lh*JI £— I - Y - V 

Op i...,,:.^! UiUJI j- ( t ) pjj jLi^I f A^iJll jl^o L.JLL6 

•L»l jfki ZJUJI >Ju> ^j .r\-J2ji\ J-— Li* JaJu 4JL« «J>> Jjl jl t-ijilall 

.j2j jb- cj%*~J\ »\jJ lf«-oj .J>>JI II* jy J^i3 ^iJI .L-*Sll »j^i«il 

,^-a JljllJI »JLji7,,i.U uLjjJI x^j ZJLmJI «JL* ^j .kJijiitll J^bJI jL*i>L 
•jJclJII »Lol Jiw.nll CtbLu <j0j£- \y>J^ O -6, J-'T^^' '■*■* P ""•* tr* *"*r*J 

Records name address 

1 Salem Emam 12-dwawin-Cairo 

Delete this record?(Y/N) 

k— « iljll *-i"yi £-fc jlj-JI ^^Jaj ( Y ) Oj^JI .JJw-ll i t *x£j LaJLLfrj 



.Uklll 



^ ti, JUoVI c liL. J* J«-sJI *&^ Ipw jl^ ^| ,u,Vl Jf Jl>il 

: JJUI LtliJI ^^ &J> ^ \^>i\ jj\ .L-Vl j-> £— 

Records to be deleted.. 

Records name address 

6 * Eman Salem 12 - Dawawin - Cairo 
9 * Medhat Taher 10 - Nasr city - Cairo 

Delete all these ? (Y/N) 

&> J*i- J\ olc— I *J £~j> ^-IJjJI jli ( N ) r ai>i-il v^i l>x^j 
xShj ,jZ> LJLjJI »i* j^&Sj .L*iL(j ou-. ^If ^^ ,>-l»uJI CH^* 

ULj o^U-JI u* ^iAi. ( Delete all these? ) Jlj-JI f Ui ( Y ) LL& 

.oULJI tJLc-ti j-4 

( Exit ) f Ufcll ,>. ^jlhJI - y - v 

.( Dot Prompt ) iiuJI i^si- Jl 

oULJl S.x*L3 JL)U e L-JJ[ V - 

jl ( Assistant ) xtLil ^.t^ ^1^ Ji> ,>* ^ U W ^a*.13 u»b .tq fi 
dJij .( Dot Prompt ) SksJI i^i- ^ ( CREATE Cadets ) jJi\ ^Ji>^ 

,P> J* &** c Fidds ) J-^ 1 * ^ J * JUJ L * Wi ' ** ^ ^ ,J ( ° " v ) 



AY 



.UalM 



CUBSOH < > 


INSERT 


DELETE 


Uf a field: 


t 


Char: *- * 


Char: Irs 


Char: Del 


Doua a Field: 


4 


Hard: Hone Bid 


Field: *N 


Word: *JP 


Exit /Save: 


*End 


Pan: **- *•♦ 


Help: Fl 


Field: A U 


Mart: 


Esc 



Field Name Type 



Uidth Dec Field Nane Type 



1 
2 
3 
4 
5 
6 
7 



30B 

ADDRESS 

AGE 

NOTES 

PRICE 

QTV 



3EEEEH33S 

Character 

Character 

Numeric 

Nemo 

Numeric 

Numeric 



■3D 

10 

38 

2 

10 

7 

7 



ODIFV STRUCTURE <C:> MOSi 





2 
2 



Field: 1/7 



( o - V ) j£i 



: y#tf oiUI JSL* ji ^,^j 



Field 


Field Name 


Type 


Width 


Dec 


1 


NAME 


Character 


35 




2 


CLASS 


Character 


4 




3 


ADDRESS 


Character 


40 




4 


SEC.SCHOOL 


Numeric 


5 


2 


* 


DTENT 


Date 


8 




6 


TNO 


Character 


8 




7 


BLOOD 


Character 


3 




8 


RELLIGION 


Character 


12 




9 


NATION 


Character 


10 




10 


BDATE 


Date 


8 




11 


BPLACE 


Character 


12 




12 


FATH_NAME 


Character 


32 




13 


MOTHNAME 


Character 


33 





\Y 



,ltl* 



Field 


Field Name 


Type 


Width 


Dec 


14 


F_SALARY 


Numeric 


10 




15 


FJOB 


Character 


14 




16 


NO_BROTHER 


Numeric 


5 




17 


DATE_SEC 


Numeric 


5 




18 


HOBBIES 


Character 


38 




19 


N_RELATIVE 


Character 


35 




20 


NOTES 


Memo 


10 





( Assistant) juOJU ^b* &J> ^ Uj ^^AJI dLL. .LjljI j^ 

: UiaJI - tji A" &> JUI j^l *<& Ji> &■ J .^U^l Jr- Lf 

INDEX ON UPPER( name ) TO Name 

.(Name.ndx ) ,^-rfiJI Ulil .UjI Jl j*1\ 0* ^j^ 

.-^ Jj^ Jl ^-^iJI ^ .Ljtfl Ji^uJ L* ( UPPER ) UIJI f ljLic-l ^ 
ixtte vJL. ,J l^lSLi ^ >JI J^* ^-^1 J>b .L-.VI JSLi ju»j3 Jl U* ^j^ 
•J*. L-j ^Uj'yi pi-. US' i_j>tll ^1 Jl J^JI i*^, Jl jijj IJub, .obLJI 

jl ^-iUI £jJl» jCj |»^j aj ^UJI u^j^iil utLoj oULJI ixtlj <JL* .Lijj juuj 

OliLJI AJLC.V3 J-JU3 J.JLJLL-1I iljj lilj .^li^l (^L-w L£ 5-U^JI J*i ,yo LfSAil 

i3i/k ,>«■ liUi *Xjj .obLJI IjlcIj ,y JjJjO »/tf l*«3 ^-j^ill tiujbo *Ij ^^> obLJI 

: JUI ^Nl Li* 

USE Cadets INDEX Name 

,^-^iJI oLU, ( Cadets.dbf ) oULJI »jLtL5 aJU £j3 Jl jaj_, li*, 

.cjjJI ^J; ^i ( Name.ndx ) 



M 



Ji io^l i_AL-i J iu[ i - v 

^ ^jl^j^JLI ^-kL-j j^> ( Screen ) JU-al liLi ^....ii Jl g^L^JI ^U»« 
0-t JU-aVI JLiLi .LUI (> SL : y .oUl-JI IjlaIj ulL. Jl oUL^JI JUol l^u> 
ilkJ^ Ujl.1 UjLiJl ,>£-,. Li" -£Ul>VI Jr- ^ ( Assistant ) ju-ULI ^1^3 j^ 

i*w>jil JUiVI JLiLi «LijJ L* jn^ii** liUJ-lj " I lli JL^j.^.m j_« (o) *Jj 

.( Cadets.fmt ) *~J iilill J* ^UJI .Jill ji .ji^j ( Y - V ) jsliu 

j-j^Jfcll *l &l[ 6 - V 

^ ji Utif ( Assistant ) jlcLJI g-lJjj ^5lj5 Jirt &c jjyfcJI . Lul .^SUj 
L^a j-. ^1 ^I^UI .^fa ^UJI ^j .( CREATE REPORT ) ^i\ &J, 
jjytJI .Liil jl Zli>}L» £j> .dc\A> vjjiiall jjytJI j£s JbJbw LfSjJ? ^ ^ ^Ij 

.LniJ jllc liDi juu oULJI ^kj J> lflljJ»ij J>H»JI *i» *3l>-j ji^d' ^ UjLftl 

«Jj~>j .JCjLxS" *X; ^y £-°^ Jir'' i>£ ilUij vi/**J' p * — ^ <£>*' 4-^/J? tiHifrj 
J* Jj-4^JI £y.P (ji »j£^ *Oj-* i>*»w L*j^ jtA^^ ' Lwl ^ il^JaJI fci* . l^T,„'i 
.iillidl JL-tjill ^"IjJI i»«lji JLLfr A>j-i «^i IIaj -jJ/tJI J^Li ,y *£?tljlj JLiLUI 

jwbjJI (---S'jS i - v 

J-SLiJI mij ZJUJI »JUb ^j ^11 ( - ) _»j ff-al^J »JLc J^ iJjZpij >Ub |t ■...,. ,a.~ JLLfr 

«-o uj,,!]*-* j*i jjlj j3 «iUi ji £«j .g-iljJI »If) ( Hierarchical Structure ) ^^fll 
p-j J^ iyuJI Lib J-SuS/l ,>« *Jp g*\jJ\ c>* ^-^1 J^ i^j^^ *fr c 1 ^ 1 '-a* 

( Called Program ) $\*xlJ fjj jXS\ g-lijJIj ( Calling Program ) *lzxiJil> 

■ .( -\ - -V )■ JS^JI >i 



^o 



.IfclH 



Cadets. prg 

l- Adding new daia 
2- Printing reports 

3- Making changes 

4- Deleting records 

5- Exiting 



I 



Cadets.prg 
Making changes 






Cadrep.prg 
Print reports 



Caddel.prg 
Delete records 



] 



X 



rep.prg 

Creare reports 






labei.prg 
Create labels 



{ 1 - V ) J£i 

^U^JI ji Uwi j-ii. Lf .&jw £-lJ* L*Jujl, U31-M •!• ,>• UJ», Ji'j 
^L Jx. Jl^ oli JLJLy f ^JI i-5 J* t*; ^JJI £^1 j* ( Cadets.prg ) 

J+-J ;l*> g-ijj J*> c* i*Juuj ^ ;^ju* asi^, Jl f U*Ji p-a U-*j 

Ji - jUslj ji^Jtfj f ...Hi J4-JI 0- cr* ^ -'-^ ^ ^ ^ f 1 ^ 1 i^*^ 3 
^ ^ 4J^ yi £~JI g-I^JI -kl*^ J^ >j- »iUi jl ^ •»■»» t>* js*-" £-^ 

^ JjiJU ~b^JI J.JUO fJ JL ^ I4L.JL-3 JL^ ^1 UjM jl L4II 4*w UWI 

.4^1) *JL* JUL> 



*i 



a-**j» $*>*& 



c ^lui ji=aii 



ty^iji g«Uu*jr 



^v 



a-*J.*» s^-h" 



( Cadets ) 2LUJL ^UJI ^Jl £-l^JI yi, .( PSEUDOCODE ) ol^JJI u* 



.( Environment ) g-l^l i^ jh-* 3 

-Lai I ^jfill *_iL»j oULJI iJLfrlj «_«La jtXJ 
sijJI 3«5li)l ^jJ iyljSo iil> .LiJl 



.iiLiJI 



ll«a 



^vir i~-?j\ **5Uji ^^ 



-\ 

-Y 

-r 
-i 
-o 




-ADD NEU NAMES AND ADDRESSES 



2-PRINT REPORTS OR LABLES 

3-MftKE CHANGES 

4-DELETE NAMES AND ADDRESSES 

5-CHANGE COLOR 

6-EXIT 



HI LIGHT OPTION BV USING t OX 1 AND PRESS4 1 
OR PRESS APPROPRIATE MENU NUMBER 



( \ - A ) J£i 

.( Exit ) £j>JI jUSl f jlc iJl> ^i Z....,.:^! JuStiJI ^^ SaW 
.( Exit ) £j>JI jUi-l ill> ^i SliUI i^^ Jl £j>J\ 



-1 
-V 
-A 



^l^JI ^LT ^ (PSEUDOCODE) LJjVl ol>»JI Llif ,>» .Ipflfl juu, 



^ 



4-hMj" £*U>J« 



***************** 

Cadets Information System 



Cadets.prg 

***************** 



* Set up initial parameters 

SET TALK OFF 
SET STATUS OFF 
SET DEFAULT TO C 

* open the database and index files 

USE CADETS INDEX Name 

* Begin loop for main menu 

choice = 

DO WHILE choice <> 5 
CLEAR 

TEXT 

Cadets Information System 

1 - • Add new names and addresses 

2 - Print Reports 

3 - Make changes 

4 - Delete names and addresses 

5 - Exit 

ENDTEXT 

* Get users choice 

@ 16,20 SAY "Enter choice: " GET choice Picture "9" RANGE 1,5 
READ 



* Branch to appropriate task orprogram. 

DO CASE 

CASE choice = 1 

SET FORMAT TO Cadets 
APPEND 
CLOSE FORMAT 
CASE choice = 2 

DO cadrep 
CASE choice = 3 

DO Cadedit 
CASE choice = 4 
DO Caddel 
ENDCASE 
ENDDO (while choice <>5) 

* Returning to the dot prompt 

SET TALK ON 
SET STATUS ON 
RETURN 

^.Vl ^ .iiUJI Jx J-iidl ol>> j^ t~; ^ill ( SET TALK OFF ) ^.Vl 
JLiLJI JiJ &> ( Status Bar ) UUJI ij~t jt-^ e;JJI ( SET STATUS OFF ) 
uJLJI ^JJ\ J*^ ^ill ( SET DEFAULT TO C ) ^.Vl ^ .g-t^l JuiJ -U3? 
^Li^JI jlT lil j-Vl I!* ^^js c ^ iJ .( Default Drive ) (,jSclA\ ^ytfl ** 
._*-> ( B ) .-vJl jl ( A ) .J^JL ( C ) JpJI JIV-L j^r- ,^V J-c- !*>>>- 

.i>UJI 

^^1 tiUj (Cadets.dbf) obLJI »jl*15 oiL. ^ g-«bjJI a-, ^lill «j»JIj 

.( Name.ndx ) *i ^lAl 



\-\ 



4-*->jH £*bjJI 



f jic^JI v^SL, ,^> ULto ^ yj| ijjI^SuJl HUH .Lug fJ i, OJUI .^Jlj 
i^Uil J*,* "^J&}\ UWI a* J*i ^ ^ .^.b^JI ^ £J >U ( 5 ) fij\ 
j>-JI £-» L^ ( ENDTEXT ) ^% ( TEXT ) ^Vlj .g-l^JU iL^JI 

JLJtfl .jlktlj ( choice ) ;>IJlII ^j^ .Li;| J^&dl UUJI iLL, ^i Ji* 1 ^ 

^ill ( choice ) ^-JUll <y -t^Jwj f ju^iJil jUsl JUt-L f >L; pLJI .>*Jlj 
f hiw-l Jm-X L* .( @, SAY, GET, READ ) ^.IjVl r U*aJ Ji>^L, ..jUjI j~- 
^j ilji*i Jli.il J* f J^^ 1 jf*» ^* ( 9 ) fjjl f UsaJj .( Picture "9" ) fjL* 
C*j JM J* f Jti«^-ll .*~ IJ*j .( RANGE 1,5 ) IjLx f UJwJ Ji**, Li 1 .o Jv > 

.g-lijJI ALi ^.>T ^ J ji (5,1) i- 

iUsI J^ f-LJ^JI jLtL-j ^ill ( DO CASE ) ^ti\ f jL^~, ^UJI .j^JIj 

jtlij g-olj^JI oP ( 1 ) |»V j.J^L-11 jlliw L.JLLCJ ..l.V: .11 jUSl Jx »LJ jljjUl 

SET FORMAT TO Cadets 

juuj .( APPEND ) ^.Vl Jj^ ^ jujl> Jj«~ liU»L f jljc-JJ 2*.- l-T 
^.Vl j,j> ir* JLi-iVI iLiLi OJL. j!)UI ^ J^JI IJL* JU.il ,>- .L^?l 
.^>f V iL-^JI JuiUJI jtks iJUJI Ji* ^j .( CLOSE FORMAT ) 

.3L»> J^i g-U JI gysll J! jaj3 ( 2, 3, 4 ) ^>Vl oljLS^b 

* 

pi ^ill a^ljfcll iiUJI U«; ^.Ijl JSLi, g-Lj^JI ,>* ^Vlj ^jUI .j^Ij 
( Comment ) jJLrf XiU»l M& .( 5 ) jU^U f jiaJll jUSl ZJU ^i UUs 
jJL*3 tf l jV dUij Lj,l>sll UUJI Ujtj g-a^ ( ENDDO ) jJl\ Jj* 
Ji jiySi ( ENDIF ) jJi\ ji ( ENDDO ) j-Vl juu *iUI ^ ( Comment ) 
« ili-Lci* SjjIjSo oU1> »JLft a,>j JUft JL»U. LLa; IjlJU oj£i '-i*J 'g^^W "^i*^ 
.( DO WHILE ) J gp ( ENDDO ) ^ i ( Comment ) j-UJI p^ji 



*"*->.»* fcA*" 



U Jl y-UJI A-rf JukJ jd\ y>\/i\ f L*=J iylj&JI iiUll .LfSl JUO ib-X ^ 

: *JUI ^IjVl ^j -£-M JJ *-U cjIT 



SET TALK ON 
SET STATUS ON 
RETURN 



aIu*^. 



a,— Jl JJJtfj I...^! X-JSUJI JLili ,y ^^k; ^zll o")LkLjl jl Jl »jUVI jJUkj 
^ni.iT.JI g-«lijJI £>& t» ; ....-Jj .( Routine ) ^l* „*> g-*^ **lJ»l yiks d^ndl 



\-r 



jjjUnUgAijf 



g^ibJI Jjaill 



jdjiur j^i-j- 



\-0 



^jUaJI^-b* 



^Jd\ fZj ^JLII ( Cadrep.prg ) g^li^l >» j^UJI g-oU^ op ^Lo/jM £w, Li" 
£-1^1 Ioaj .( 2 ) ,Jj jL^-^U f J^i-il jL^-l iJU ^ tr-^^ 1 £-^l o- *J! 

Jj; ^JLJI ^^ c-oiixll jUT lil U* Jl>- jfr, U .*~~JJI i*iUJI JJ ^J\ 
( PSEUDOCODE ) ZJ/sfl cljJi^JI ^^jS ^ .JuyLkll Jjt &U, J i^LJI 



j?i\£ i_»jJLkll jjJCl\ 9y Lili JojC-j LiLiJI ^wt - \ 



[ 



SELECT A REPORT CHOICE 



1 



1 - REPORT 

2 - LftBElS 

3 - RETURN TO lift IN MENU 



ENTER YOUR CH0ICE<l-3) 3 



( \ - ^ ) jsLi 

.JLilS t^a *»....SJI JLiUJI JI p>> JI *Xj fjj Ji jL^>' pJ* aJU ,y 
jf jjytJI ^i oULJI »JL_cl5 CjUL-j £**» ^jt «_j JJail o^ 'M ^** Jlj— JI 

•^jfj^j ot?"-* J***« (>*■ ( Query ) &mJI 
.-llc iImJI i_i Jiall *-/yi £x. .jiniJll Jlj-. *l» ( Query ) tt^JI jl~>l Ju£ 

.i^jjJLLLI J-H...II ,jx- i^o«JI «Ij 

.I^uiVI ^^-ij J* (/y^u ^jlll O^Lk*JI AJLC- j-a> <t^ 
>JL»bLJI <4^J *^J i_jjiill |»— '"VI J-fc ijy^-i J-**** i$l J-£ JJ— JI f-*-* *-"-»■ tj* 

J*, oMkoJI tJu>> j^jX- w *-- "V' cH^ lM iA**** 3 ££k*u* •■** i>>j *JL> tx* 

.Jj»<-JI j^Sj Jj^W o^ L*ji>I jl~»"if .j£vlJJ 

.ioUiJI Js. tSx\J* r ? iiLJI J* jjjsi\ jajc o Jldl jl^ lil Ufi Jlj ti ^ 

.jjy&JI icU? *Xj 

.( Rep.prg ) £*k>j> JI gjisll ^ ( Report ) yjb jLsH jul© 



- Y 

- r 

- i 

- o 

- '\ 

- V 

- A 

- \ 
-\- 
-\\ 



>-Y 



.( Label.prg ) ^ ji tv *j| ^ ( Label ) r ^^ y ja jLs.1 ju* -\ r 
jjJc-j c ^> X-iLiJI J* jjydl ^jx. yi> ^j ( Pause ) L3>. iaLiJI olij -\r 

•IjJli »^ i^-sJjJI i^UJI JI iayJI -U 
g^U^JI Lb* ^ ( PSEUDOCODE ) lJji\ djWt U* ^ .Lp?l *« 

***********(^ ac j re p p r g 

* - - Reports program for Cadets Information system. 

* Clear screen and ask about report type 

CLEAR 
TEXT 

Select a report type 

1 - Report 

2- Label 

3 - Return to main menu 
ENDTEXT 

* Initialize variable and ask for report type. 

repchoice = 

@15,20 SAY "Enter your choice (1-3)" GET repchoice ; 

PICTURE "9" RANGE 1,3 
READ 

* If return chosen, return to main menu. 

IF repchoice = 3 . 

RETURN 
ENDIF 

* Ask about query. 

CLEAR 



qchoice = "A" 

@ 10,16 SAY "Do you want (A)ll records.or a (Q)uery? M ; 

GET qchoice PICTURE "!" 
READ 

* - making Query if requested 

IF qchoice = "Q" 

SET EXACT OFF 

qname = SPACE(8) 

@ 16,16 SAY "Enter name to display" GET qname 

READ 

qname = UPPER(TRIM(qname)) 

SEEK qname 

recnumb = RECNO0 

COUNT WHILE UPPER(name) = qname TO howmany 

* IF the name is not found, warn the user 

IF howmany = 

@ 19, 15 SAY "There is no & qname" 

?CHR(7) 

WAIT "Press any key to return to main menu" 

RETURN 
ENDIF(howmany = 0) 

* IF there is more than one record having the 

* same name , they are displayed to the user . 

IF howmany > 1 

CLEAR 

GO TOP 

SEEK qname 

DISPLAY name, class WHILE UPPER(name) = qname 



\S 



@ ROWO+2,15 SAY "which one do you want"; 

GET recnumb 

READ 

GOTO recnumb 
ELSE 

SET FILTER TO UPPER(name) = qname 
ENDIF(howmany > 1) 
ENDIF(qchoice = Q) 

* _. Ask about printer 

toprint = "N" 

CLEAR 

@ 10,5 SAY "Send records to printer? Y/N" GET toprint PICTURE "!' 

READ 

* Displaying the report 

IF toprint = "Y" 

SET DEVICE TO PRINT 
ELSE 

SET DEVICE TO SCREEN 
ENDIF 
DO CASE 

CASE repchoice = 1 
DO rep 

CASE repchoice = 2 
DO label 
ENDCASE 

* _ _ if printer was not selected .pause 

* before returning to menu 

IF toprint < > "Y" 

@ 24,1 CLEAR 

WAIT "press any key to return to menu ..." 



ENDIF 

* When report is done, close filter, 

* and return to main menu 

SET FILTER TO 
RETURN 

;>|jjl ^ii. ,LliL ^UJI .>*JI fJ i ^ .o^idl ^ytfl £P oIjLjSI 3-JL5 
^ ,*i .( numeric ) Lajl* j-aiII Jj»*w Li*j juj >-» S-Jtfl ckl^j ( repchoice ) 
j_jdll ^ juy^ij ljjJLII jL-si-VI JU-aV ( prompt ) f JLkx— U UL-, ^a.^ 
JU-iJ Jj f jLiti-Jll jL>7 ( PICTURED" ) ij^-dl f L*s-l ^ ( repchoice ) 
£~*u AJl> 3 l ^ tfJJI f l5^l ^ju. jlu*J ( RANGE 1,3 ) tfjll f J~i--: LS* .^IjloI 

: SJLJI jjkJI J* ^j^ ..*JI IJt»j ( V ) ^ jl&V 

* Initialize variable and ask for report type 

repchoice = 

15,20 SAY "Enter your choice (1-3)" ; 

GET rephoice PICTURE "9" RANGE 1,3 
READ 

.JUI >JI ^i ^1 Ltf JLSiJj >-JI Jul*; yi 

: JLJLJI jjix-JI Jx. jij^j jj»j .( 3 ) i^tl ..i^Tu.tl 

IF repchoice = 3 

RETURN 
ENDIF 

_ r j«ill ^i ^Aiii-il jL=>l chj* 2 f-a "°^^ri i/'-r^J i>?«^ J-*-" 0-* «i**-" -^w 



: IJLII j^kJI ^a jj&i . j*JI IJ*j ( qchoice ) 

qchoice = "A" 

@ 10,16 SAY "Do you want (A)ll records.or a(Q)uery?" ; 

GET qchoice PICTURE "!" 
READ 



^ ' tjs S <jjj> J[ f-VI li» J-^J rij •( qname ) j-cll ^3 p-VI li» ^^o 
.( TRIM ) "XJLJI &J> &* ; ^'>" ^UU £— ri ^ •( UPPER ) JJUI &J, 

.fjii &> j£\ ji j>Ij uij> ji>ii f j^~ ii ^a 

*J[ J^ 1 re ^ JJI J^ 1 1* <*>"" r 3 ( SEEK ) ^" 73 ^ J * 1 ^ r° 
jt'f-^l li* ^ «*Ui3 u^ 1 c^Lp-JI iJLfr j-^> (^ ,J (recnumb ) ^1 J> 

.( howmany ) j-jsll <y *-uJI IJ* o^j J M r* <^' (J -^ Ji 

j^JI j! r -^l ,>* ^Ull ^ ^ ( SET EXACT OFF ) jt\ f ^-y 
Jjl <> ^x^ >stj J^tJ'^^j^i name ) H" J*» c«u' Jl H r* **" 
^ ( Default ) <^jl-1I £->>Jl o> ct-j • i ^ 1 **■>-* ^^ H? 1 
«« f> J iA ii y»- fi-W ^ ^ ^ ** *! ( SET EXACT OFF) 



: SJUI jjkJI &> .jnll U* aAy 



IF qchoice = "Q" 
SET EXACT OFF 
qname = SPACE(8) 
@ 16,16 SAY "Enter name to display" GET qname 

READ 

qname = UPPER(TRIM(qname)) 
SEEK qname 
recnumb = RECNOQ 



ur 



COUNT WHILE UPPER(name) = qname TO howmany 

fS .juj^JI ^^ J-iiJ CHR(7) UIjJI r ljLJwL-l JlOL LJ" .JLi^JI XLJLJI J>k 

: JLJUI jjk-JI Jx- .j*JI li* tJjiKj, 

IF howmany = 

@ 19,15 SAY "There is no & qname" 

? CHR (7) 

WAIT "Press any key to return to main menu" 

RETURN 
ENDIF(howmany = 0) 

j^iis jj\ .l-Vl ^uji ^oji j-mJIj ^71 oul, ^^u f >u c ui «^ij 

p-rtL ^UJI Jjk-JI (Jij jL^-L f jLii-JI f> iL ^ kjjILH Ojljl ji ^Vl ^ 

( COUNT ) ^l f IjJwJ S^ja 4/0 j3 OjC ( Record Pointer ) o">U-JI j,^> 
uiUI Jjl JI ^ijll dL^j Vjl fi, J^iJI ji^ J^, Jji JI 2L;l5 ^ *3iUJ il^ 
r>LL, ^^ ^ ,J .aUI Jji ,>- i«Jl Lu. ^a. ( GO TOP ) ^1 Ji> ^ 
^ill J^JI pi, ^ f j^l-JJ Jl>, ^Lj .(DISPLAY) jti\ &J> ^ o^U-JI 
pi- fi .( recnumb ) ^idl ^ ^J\ U* ^^ ^ ^1 ^ ^LL, ^^ jL, 

iUJ Wjui-,1 J^-JI ljub JI ^UJJI 



bjte ( howmany ) ^Aill $ ^i J^UI jiu jb-lj J*~ J* j^iJI UL> .^i, 
j^hi f L*iJ ^ ( howmany>l ) .bj-iJI jio ^ju. LIU ^ JI ( ^ ) 
jl^ 1 J-* J>^e 0*Jl'K*j .-t^l jJi~ tfUl J^-JI J^ J^^t^U (Filter) 

: UUI 

IF howmany > 1 
CLEAR 



\>r 



GO TOP 

SEEKqname 

DISPLAY name, class WHILE UPPER(name) = qname 

@ ROWO+2,15 SAY "which one do you want"; 
GET recnumb 

READ 

GOTO recnumb 
ELSE 

SET FILTER TO UPPER(name) = qname 
ENDIF(howmany> 1) 
ENDIF(qchoice = Q) 

Jx. *&1\ II* cjy^j, .( toprint ) j~icU J* f x^aJA U>\ ^jte ^ .isUJI 

: SJUI jjkJI 

toprint = "N" 

CLEAR 

@ 10,5 SAY "Send records to printer? Y/N" GET toprint PICTURE "!* 

READ 

J.J&LJI jLi>l v— > iiuLkll J iiUJI Jl jj/fcJI *-»■>; Jl ^ijj g-*WI «J»Jlj 
IM, i«UJI Jl *^.j3 ^ ( Y ) j\~>t\ U» jtf lili .( toprint) J Jd\ J W 
OjSo UjLLft ( rep.prg ) g-»t^JI jl-Ljs ^ ,*5 .JLiLJI Jl *+&£ ^ ulli ^-i oli" 
( label.prg ) g-ob^JI Juia ^ U .( 1 ) ^1 J* Lp« ( repchoice ) jJcX\ 
J-t ^^i»w «j*JI I!*, .( 2 ) (JjJI J* Ljyi»w. ( repchoice ) jJcU && L.jux. 

: IJUI j>-JI 



IF toprint = "Y n 

SET DEVICE TO PRINT 
ELSE 

SET DEVICE TO SCREEN 



\U 



ENDIF 
DOCASE 

CASE rcpchoice = 1 

DO rep 
CASE repchoice = 2 
DO label 
ENDCASE 

j± ( Pause ) L5>. JLiUJI J* ^£JI ^Uj ^L5- 3- ^ ^Ul .>*Jlj 

jjjUlll iUiLS Jl £>>JJ ^LLLo tfl J* JuU2u p jjyCJI OliLv "u\J» jJ^i-JI j-ku-j 

: JJUI jjk-JI Jx «J»JI IJ* iSy^a •S-515 «Lr« 

IF toprint < > "Y" 

@ 24,1 CLEAR 

WAIT "Press any key to return to menu" 
ENDIF 

Jl Jiill j>hu j± ( Filter ) ^ijll ,3*M jlTjU ,>- ^ j-i* ^iUJI .>jJIj 

.( RETURN ) jJH\ r IJ^-L l~~*J\ i^UJI Jl ^>JI ^ p J,Vl aJU 



( rep ) £.1 — i^JI 



N - \ 



^i ( Assistant ) JLtLil g-^l^ pjlp pLioJ && "^M f^ '■*■* ^^ ^i 
JJi, .( EOF ) alii o^*w-, ijl^i ^ UjI^j ^ 3i,l>J iil> Ji»la ( @...SAY ) 

DO WHILE .NOT. EOFO 
CLEAR 

@ 2, 2 SAY "Cadet name:" 
@ 2,37 SAY NAME 
@ 3, 2 SAY "CLASS :" 



Wo 



@ 3,38 SAY CLASS 

@ 4, 2 SAY "ADDRESS :" 

@ 4,38 SAY ADDRESS 

@ 5, 2 SAY "Secondary school average :" 

@ 5,38 SAY SEC_SCHOOL 

@ 6, 2 SAY "Date of entering the institute : 

@ 6,38 SAY DTENT 

@ 7, 2 SAY "Telephone no:" 

@ 7,38 SAY T_NO 

@ 8, 2 SAY "Blood Type:" 

@ 8,32 SAY BLOOD 

@ 9, 2 SAY "Religion :" 

@ 9,38 SAY RELIGION 

@ 10, 2 SAY "Nationality :" 

@ 10,38 SAY NATION 

@ 11, 2 SAY "Birth Date:" 

@ 11,38 SAY BDATE 

@ 12, 2 SAY "Birth place:" 

@ 12,38 SAY BPLACE 

@ 13, 2 SAY "Father name:" 

@ 13,38 SAY FATH_NAME 

@ 14, 2 SAY "Mother name:" 

@ 14,38 SAY MOTH-NAME 

@ 15, 2 SAY "Father salary:" 

@ 15,38 SAY F_S ALARY 

@ 16, 2 SAY "Father Job:" 

@ 16,38 SAY FJOB 

@ 17, 2 SAY "Number of brothers :" 

@ 17,38 SAY NO_BROTHER 

@ 18, 2 SAY "Date of getting Sec-School:" 

© 18,38 SAY DATESEC 

@ 19, 2 SAY. "Hobbies"' 



@ 19,38 SAY HOBBIES 

@ 20, 2 SAY "Nearest relatives" 

@ 20,38 SAY N_RELATIVE 

WAIT "Press any key to continue" 

CLEAR 

@ 1,40 SAY "Notes" 

DISPLAY OFF NOTES 

* Ask the user if he want to stop displaying 

KEYPRESS = 

@ 22,12 SAY "Press any key to continue or (Q) to stop" 

DO WHILE KEYPRESS =0 

KEYPRESS = INKEYO 
ENDDO(KEYPRESS) 
IF KEYPRESS = 113 OR. KEYPRESS = 81 

CLEAR 

RETURN 
ENDIF 
SKIP 
ENDDO(while not EOF) 

j,\X\ JlJ\j .( String ) Li^. "*L±S ^1 "^ re ^^ -J^ 1 IJL * r*i •J*-'* 
Ji ^=11 ( X,Y ) oLJlbOfl ^ ^^ IS .JfcJI li» oL^*-. ^^ Aik-I* ^ 
iiLlII Jx. j>Ij >-. Jx Lfi»j* re J-**-" "^P*-^ J-*^ 1 r*i ^ ( @ ^ <J - , * JI 
( Y - *\ ) JSLUL x^*jll UUI j^a JLiUJI J* $-*-■ J*»- u*j* -^ ^^ 

jc— j aJij .'AS-... . L4L4 J> ( Notes ) ol£>}UI Ji> ^^ Uuf ,h*.}L L£ 

^^u fJ i (KEYPRESS ) jjall .Liijj Iju. ^JJI g-Ls^JI ,>- ^Ul «3*Jlj 



MjUaM^b^ 



■*iji 






rfiil C LU1L i*UJ| Sj LU| jLs.1 ^ ( INKEYO ) SIUH f b*U Jfe.^ 
ju li* oP ( 113 ) J ( 81 ) tfjLj ;> LU| ^ ^tf ISJi >fXkUil| ^ 
^ UUJI J* ^ .^^l J^ (q) C l^ J (Q) C UL. > lij, as rJ ^Lll 
la* li >l c Ui- rf i J* J** lil ui .^itJi i^u jj s^jj ^u^j, ^ £j>J| 

: JUI J^JI oUU ^ Jl ^ 



CADET NO 

NAME 

CLASS 

DATE OF ENTERING AIR ACADEMY 

BLOOD CLASS 


6960 

MOHAMED ALY SALEM 

55P 

09/01/85 

A 

13 -ABBAS ELAKKAD 
2603556 
MUSUM 
EGYPTIAN 


ADDRESS 
TELEPHONE NO 
REUGION 
NATIONALITY 


HOBBIES 


FOOTBALL 


BIRTH DATE 


01/22/67 


BIRTH PLACE 


TANTA 


SECONDARY SCHOOL AVERAGE 


70.00 


DATE OF GETTING SECONDARY SCHOOL 


1985 


FATHER NAME 


ALYSALEM 


MOTHER NAME 


FATMA MAHMOUD 


FATHER SALARY 


600 


NOMBER OF BROTHERS 


5 1 



( Y - ^ ) JSLi 

(label) gJ ijJI y - * 

Jt*Ull g-l;^ f lj^Lj ^a Vjb S^iJI ^UJI p^alJ g-.bjJI II* h& ^ 

ZjUC ^So Jj- dJUj jl*.^ jjLJI ( rep ) g-l>JI J3U, jjy .( Assistant ) 
* label.prg 



\\A 



* Program for making labels 

R = 2 

GO TOP 

DO WHILE .NOT. EOFO 

@R,2 SAYCADET_NO 

@R+1,2 SAY NAME 

@ R+2,2 SAY SEC_SCHOOL 

@ R+3,2 SAY ADDRESS 

@ 17,2 SAY "Press any key to continue or + ; 
"(Q) to stop" 

KEYPRESS = 

DO WHILE KEYPRESS = 
KEYPRESS = INKEYO 

ENDDO(KEYPRESS) 

IF KEYPRESS = 113 .OK. KEYPRESS = 81 
RETURN 

ENDIF 

CLEAR 

SKIP 

? 

ENDDO 
RETURN 



m 



erf*** 3 " ^Ah 



^Ldl J^UI 



iir ^u.jd 



\r \ 



: jfiX ( PSEUDOCODE ) JLJjVl ol>iJI LbT V,i 

.Aifc &nJI v-Jjlilll (J^nJI ji fJi\ $£. Jlj-JI »Ij - 

•X~«-jJI JuiUIl JI ^>>JI ^ ^1 j? JU-il f J* 2JU ,y - 

•tf^ *■&* J 31 -* cr* l*^ - ^jj* J! r-5" Ji** ri - 

.i_»jlkll j»-,"yi ^x- £*iJI *lj - 
.miVI ,_^ij Jx \JjZ*3 (_^JI O^Lk- JI JAX i_iL»> *Xj - 

,_^9- fJ&xJLI j*ip£ (►!» jt-.'VI II* Jx <,£j^w J«-« ^1 Jx' ji^i*)! »Jx ilU ,y - 

•>T LJ JijL; 

Jx o*)L>bJI »i* ^jX pju »— VI ^^Jj Jx c?>jO c£L>w Hjlx i>>j Ul> ^ - A 

J~- ^1 JUoVI iiLi Jx ajliL, ^^x ^ v>^l J*-JI Jl Jj-^>fl JLLx - ^ 

.Aj^ltill JybJI Jjjw jm i*--JJI JuiUJI JJ »*>JI ^ -\ • 

******* Cadedit.prg 

* Lookup and edit data in the cadets database 

* Set up a loop for editing records 

entering = .T. 

DO WHILE entering 

SET EXACT OFF 

GO TOP 

* Ask for name of person to lookup 

CLEAR 

lookup = SPACE(4) 

@ 10,12 SAY H Enter name of person to edit" 

@ 12,12 SAY "or just press Return to exit" ; 
GET lookup 



\xr 



READ 

* If no name entered , skip all 

* commands between here and enddo 

IF lookup = " " 

entering = .F. 

LOOP 
ENDIF 

* convert lookup to uppercase to 

* match index file, and trim it 

lookup = UPPER (TRIM(lookup)) 
SEEK lookup 
mrecord = RECNOO 

* count how many there are 

COUNT WHILE UPPER (NAME) = lookup TO howmany 
IF howmany = 

@ 20,10 SAY "There is no & lookup" 

@ 22,10 SAY "press any key to try again" 

? CHR(7) 

WAIT 

mrecord = 
ENDIF(howmany = 0) 

* if more than one record has that 

* name, get more information 

IF howmany > 1 

CLEAR 

mrecord = 

SEEK lookup 

DISPLAY NAME, CLASS WHILE UPPER(NAME) = lookup 

@ ROWQ +3,10 SAY "Edit which record .# ?" GET ; 



\U 



mrecord PICTURE "9999" 

READ 
ENDIF 

* if there is a record number greater 

* r _ than zero, edit the record 

IF mrecord > 

CLEAR 

GOTO mrecord 

SET FORMAT TO cadets 

READ 

CLOSE FORMAT 
ENDIF 

ENDDO (WHILE enuring) 
RETURN 



*i)ljSO 2uL> £jj£j |t.l> *5 .ill*lK *~i.Jr>jj pj>\jjJ\ *~<L *la\JjJ\ IJub IJLjj 

£-*- l » d ( -T. ) j^j *jIj-J' l** * JU ^ <j' V -* > J •( entering ) IS &A\ ^Jidl J^. 

.UJuLj oUlI jl iiUJI JuLj jlj*i-/y ( entering ) ^^liill 

entering = .T. 

DO WHILE entering 

Jj^l ojoJI ^ f Jii£-il Jiju yi. dUij .oj^ ( 4 ) JJ> qj^j jJJI ( lookup ) 

hjUA\ .Jj^JI JUj? f JL^-JU ULy ^j^ pJL; ^ ..LLC ^uJI LJjJLlI ^1 ,>* 

: LJUI jA-JI J^ «J»JI IJ* i^ji~5 .( lookup ) jJd\ ,y Ojj»JI u* ,>^j 



VYo 



CLEAR 

lookup = SPACE(4) 

@ 10,12 SAY " Enter name of person to edit" 

@ 12,12 SAY "or just press Return to exit" ; 

GET lookup 

READ 

J«^ ZJU J ( entering ) j?ci\ J ( .F. ) **JJI &£* ^ *±JtUI *y*S\ ,yj 
Jjl Jl JU=tfl ^ iJUJI J* ^j .u^ ^i LLtf ij» JU-s'JI C UL. Jx. ^AiaJll 
^i dj^. ( entering ) ^^juII jl ^ .( LOOP ) ^1 LkJ^ Lyl^l ZiUJI 
^j^^jj jj^kn JL-^jJI JuiUII ijXy IjjIjScJI jLSUJI JlJUj *i> }li ( False ) r-f~& 

: JJUI jjkJ\ Jx .j*JI Li* 

IF lookup = " " . 

entering = .F. 

LOOP 
ENDIF 

..^--oJI g-tU^JI J*i- &* ^-^Ul uiL. j^i j*- *i\ *Ji>^- £- .( name ) r y\ Ji> 
^ ( Upercase ) i^ ci,^ .UJSfl &*& ^-~ »j^! ^ -»3 uo*^ 1 '■"• J } ^ 

S^L-JI jl S^SUI ^j^JJ jais-ll JU-al jli eUJJ .1^ o^> Jl LaJ ,0*1-11 
J -UJI J{ tsiii ( TRIM ) II Wl r IJ^-.l jl Ui" .Jj^JI u» o* £**" J ssi* 
y&A a>lj Jy JU-aI J ^ Li*, . f aiiJll l^Jb ,yJI Jj>hJI j*j oj>j- olil— 



: XJLII jt^kJI J* jL^<i •>" l-i*J 



lookup = UPPER (TRIM(lookup)) 
SEEK lookup 
mrecord = RECNOQ 



\n 



o^^-JI j-Aj— -u^^J 4..ri.,^j ( SEEK ) j_»Vl oi i^L- y^y 
i^»j oi^ 3 J JUI >-JI 3i> ,>* ^ US' .^jMi J*wJI Jl ( Record Pointer ) 
J*wJI U* Jl V UUI J*-. ^ JJi, .( mrecord ) i/IJJI ^JU- ^ J^-JI li» 

.dUi Jjo 
*-.VI J»j-1 Jiwj ^1 O^U-JI AJLC (-jLw* j»i ^-oLj^-JI £-• i^UJI ,J*JI ^j 

(^Vl Ji» J*t ^-j^ *-iill J *i->j •( howmany ) j*£±\ J» *juJI Iju» cnj^j 

*M *i-> ( FOR ) o- Vju ^.Jl J» ( WHILE ) f L&lJ J-ii. JJJJ ( name ) 

.( WHILE ) 2LL-L; gj-i «i-*JI 0j£» dJJJ, J»^l J**3 ^1 o"5U-JI ^-^w f yu 

.( howmany ) ^,-idl ^ *±£>* ^> iSJJl jjuJI jl~>L g-»ljjJI |.>y dJi juo 
lfl>oi ^lll tJj^JL JjL-j J*t- M-Ji^ *j'i Lf^i l-i* Op l/*-* iJL *" 'J-* o^ lip 
f j*cuil L^JU-ii ,>JI Jj^JI iltf l«J}U ^ yiJIj IlJLI ilU^I j^ki uUJJj . f aiuLjl 
UUI jj> J* ^aiaJll jjJU; ^ US' ( & ) jjS'UI f IjicL-L ( lookup ) ^-*=ll ^ 
: UUI j>JI J* ^^ .j*JI lo*j .^jJI JJLl: Jl ^ij3 ^1 ( CHR(7) ) 

IF howmany = 

@ 20, 10 SAY "There is no & lookup" 

@ 22,10 SAY "press any key to try again" 

? CHR(7) 

WAIT 

mrecord = 
ENDIF(howmany = 0) 

J»>*JI 6*~ J*- ,>- j^Sl a>*j ^j (i>l *JU i-lji fjj ^iLJI «>*JI ^j 
oUL, ja*> joj»j g-«ljjJI j.>b JJUJI u* ^ ( \ ) &* jS\ ( howmany ) a? J\ 
C^j 1 v/*-^ re ^ -*1jJUj Jbjj ^111 JjuJI j~j«j pjiiiiJLI ^JiTm.j ,_^» o^U-JI *i* 
JU*L f yLJ ojJUll J*~JI ^ f j±aA\ Jl>, ^ .o^U-JI .J* iL^UJI o^U-JI 

: iJUl jjlx-JI Ja t£P«J .jmJI'U*} .J^-JI IJu» *5j 

IF howmany > 1 
CLEAR 



>rv 



mrecord = 
SEEK lookup 

DISPLAY NAME , CLASS WHILE UPPER(NAME) = lookup 
@ ROWO+3, 10 SAY "Edit which record # ?" ; 
GET mrecord PICTURE "9999" 
READ 
ENDIF 

I!*, ol* ' j*~" Cr° j^I o^ 'ii* ( mrecord ) jJd.\ jUil ^ gUI . j>JI ^j 
( howmany = )Jjil J?^iJI J!A> ,yi Jj«. ZLlUI o}L*-JI ji>i aUJ ,►; c\ j** 
LJ..xll XJu^jJI 3JUJI J^U ,>- ji ( howmany > 1 ) ^Ul i»jjJI J>U ,>- ji 
.( GOTO ) jJi\ f lj^-U J^-JI I!* JJ V UJJI ,*i. dUJJ ( howmany = 1 ) ^j 
S^UJI JU-iVI LiLi ^jt J[ && ^JJI ( Format file ) J-SLUI viL. gi ^ ^ 
j^Lc-l w ^ L^iLII oXJjcJI JU-al ..i*t.,..II £w Li*, .^pill oULJI Ijlc13 uiL^ 

IF mrecord > 

CLEAR 

GOTO mrecord 

SET FORMAT TO cadets 

READ 

CLOSE FORMAT 
ENDIF 

ENDDO (WHILE entering) 
RETURN 



\VA 



JUlL^JiJI >J*M ^JkijJ 



jAjl ^^LJI J±»UI 



£«* £*lOd 



NV^ 



: JM o^3 g^li^JI IJL^J ( PSEUDOCODE ) LJ,Vl ol^iJIj 

.*j ^UJI J#i H £— • ^jlLlI ^)fl ^ JI>JI ^ - Y 

.( Uppercase ) .j-S* ojy- Jl ^1 Jj^ ^ - t 

.t_j^LI*ll ^wVI ,>& il*JI j^j - 
.*-.VI ^Ju Jx tAp*3 C _^JI 0"5k*~JI iJLfc j~a> w - *\ 

j^. j.oiaJll jjJbO i^L; (*jyi li* J* ^^>«j J*- J\ Jt j_,i*il j.jx. iJU ^ - V 

.>T L-J Ji-ju 

.J^<-JI »5j jj^t ,^t Uo>i jLi>V »J?<x~JLI 

,y JCUfcj ,>« JlSlxU Sjto S^o .Jbii-JI Jl>* *Ij «_jJJall J^-JI Jl Jj~s_JI Jic - ^ 

.am_JI Iju^aj 

(jill cL&Jll Ju-LnJ ,^o fT!j; ( _ r X> ^J^i-I *Lu>l JLioL . >tt7...»U rL—JI *^j -\\ 

*l> ( Marked for deletion ) £—11 oU^U LfJLt c/iU— JL* cjli" UU» -^V 
• L^J-c- oLOLt »-2>j *j (_yXJI o^Ui^JI obL> ^j^- (*~! ~ 

Lib L>t— o L^lS" O^Lm—JI ftlfc n-^a ^ .JLkl-il i^ij ( y-a JL^UJI *JL< 

.( Permanently ) 

Jl>l »iUx<-V JLayil ajliaxl w O^Lw-JI »I» jiuu pl>jX~>l ,JJxl-JI jljl lil 

.Cj'^Lk— Jl tl» 

tJUb T^a *Jj Z^3LJI £j%*~J\ «-^o ,_yj 4.1.JJ ^_a .JL^tI-J.1 JL^LLt LaJLLA 

.( Permanently ) Ljb U— • o"iU-JI 
.(^j^-l o%h— u iJLjJI jljSo ^SLj ^^s- j^ftill ?t-J.L i^>UJI JLJUJI ijjO - M 

J^JI i-Jlill Jl jya.jJI ^ .l^VI JUo - U 



\r> 



-silbwufl £ms frAl^t 



f yL, ^JJI g-UjJI UsS ^j ( PSEUDOCODE ) U^l ol > tiJI LL* juu 



JM 



* Set up loop for deleting records . 

entering = .T. 

DO WHILE entering 

* Ask for name of person to lookup 

CLEAR 

lookup = SPACE(4) 

@ 10,12 SAY "Enter name of person to delete" 

@ 12, 12 SAY "or just press return to exit" 
GET lookup 

READ 

* If no name entered , skip all 

* commands between here and Enddo 

IF lookup = " " 
entering = .F. 
LOOP 

ENDIF Gookup = " ") 

* convert lookup to uppercase to match 

* - - , - - index file 
lookup = UPPER(lookup) 

* Try to find requested name, and 

* remember record number 

SEEK lookup 
mrecord = RECNO0 

* Count howmany there are 

COUNT WHILE UPPER (NAME) = lookup TO howmany 



m 



* — If no record has that name , warn the user 

* to try again 

IF howmany = 

@ 20,10 SAY "There is no & lookup" 

@ 22,10 SAY "press a key to try again" 

? CHR(7) 

WAIT " " 

mrecord = 
ENDIF (howmany = 0) 

* If more than one record has that name 

* display records to the user. 

IF homany > 1 

CLEAR 

mrecord = 

SEEK lookup 

LIST NAME , CLASS WHILE UPPER(NAME) = lookup 

@ ROWO+3,10 SAY "Delete which one?" ; 
GET mrecord PICTURE "9999" 

READ 
ENDIF 

* If the value of (mrecord) greater than 

* zero double check then delete 

IF mrecord > 

GOTO mrecord 

CLEAR 

DISPLAY NAME , CLASS 
? 

WAIT "Delete this record? (Y/N)" TO answer 
* - If answer is yes, mark record for deletion 



IF UPPER(answer) = "Y" 

DELETE RECORD mrecord 
ENDIF(answer) 
ENDIF(mrecord > 0) 
ENDDO (while entering) 

* - Before exiting , verify deletion and pack 
COUNT FOR DELETEDO TO nodels 
oktopack = "N" 
DO WHILE oktopack = "N" .AND. nodels > 

CLEAR 

? "Records to be deleted .." 

? 

DISPLAY NAME , CLASS FOR DELETED() 
@ 23,1 SAY "Delete all these? (Y/N)" ; 

GET oktopack PICTURE " ! " 
READ 

IF oktopack < > "Y" 

* - if not ok to pack , recall a record 
delrec = 

@ 23,1 SAY "Recall which one ; 

GET delrec PICTURE "9999 
READ 

* - if record number entered and record 

* - is indeed deleted, recall it 
IF delrec > 

GOTO delrec 

IF DELETEDO 

RECALL RECORD delrec 
nodels — nodels -1 



\Ti 



ENDIF 
ENDIF 
ELSE 

* if ok to pack , pack and show 

* the process of packing 

SET TALK ON 

PACK 

SET TALK OFF 
ENDIF (oktopack) 
ENDDO(oktopack) 
RETURN 

u>JL jjoUiJI t^nJIj .<*■>». « j i > ^*-° J"* 1 -" t>* *-»*f'l j* p-*^jr" '•** 0"* *-JJ^JI 

jj&i-JI j.>u ^ij. -pJi\ Li* ,ji al/Lij ^1 o^l^-JI oULj ,_Jjjx. *3 iijjjill ii»*JI 

•J**-JI (*5j Jirt ,>* lfi-« *JU« Jjk-i jLl>L 

J-« «.,_^ij ,1 ..1, 7" 7t*JU SJLbCj .Jjk~JI IJL* b.^ liUi JUu xj»\jjj\ {y> i_j>jLL1I ( >SsJj 
^l»u £— • JL» -Li? dUi JUu t_i_ll£_> »j ^Uw< £— »J JL3 -JLiiI_il jl i^> tjj.knJI 
J-. J^-lj-o »JU. .JLwT.u.U £-1* jl (j^u {J-oUjJI jlj liUllj .IkkJI £jj» frC LjiLa 



£*lj^ ^i 4*-^ J*-, 4j| «i^> Aj^i »jUj Jl ^llawV g-«loJI 0-« JjSfl *J»Jlj 

.jjjuul A-oUjjj yr^-w.nTll 

.J*JI j*j **i— « t— 'jJLLLI Jj*~JI *5j Jl Jj«*»>ll JUu IJLj ^JJI jJi -^-^1 »Jr» fc "j 

: JLJUI jjk^JI l£j^#ubj Ijlj ^Ul 

* If the value of (mrecord) greater than zero, 

* double check then delete 



MTo 



IF mrecord > 
GOTO mrecord 
CLEAR 

DISPLAY NAME , CLASS 
? 

WAIT "Delete this record? (Y/N)" TO answer 

* - - If answer is yes, mark record for deletion 

IF UPPER(answer) = "Y" 
DELETE RECORD mrecord 

ENDIF(answer) 
ENDIF(mrecord > 0) 
ENDDO (while entering) 

juapg ( WHILE entering ) J/M Jujl^&dl ZiUJI JjU- ^ ^j^oJLI ^Jh: vLi 

J)l JLsILj ( _ r I> 4.JL f . Jjw-JI ObL; \j0j£- i*-J »j-° J^" ,_pL> • I4*— • Vj^< Ojkw tJLfr 

: LJLJI j|jU...tl ^i ^o2 2jj\JJJ\ iiUJI »Jm>j .c£U~JI 

* Before exiting , verify deletion and pack 

COUNT FOR DELETEDO TO nodels 
oktopack = "N" 

DO WfflLE oktopack = "N" .AND. nodels > 
CLEAR 

? "Records to be deleted .." 
? 

DISPLAY NAME , CLASS FOR DELETEDO 
@ 23,1 SAY "Delete all these? (Y/N)"; 



\H 



GET oktopack PICTURE "!" 
READ 
IF oktopack < > "Y" 

* if not ok to pack , recall a record 

delrec = 

@ 23,1 SAY "Recall which one (by record#)"; 

GET delrec PICTURE "9999" 
READ 

* if record number entered and record is 

* indeed deleted, recall it 

IF Delrec > 
GOTO delrec 
IF DELETEDO 

RECALL RECORD delrec 
nodels = nodels -1 
ENDIF 
ENDIF 
ELSE 

* if ok to pack , pack and show 

* the process of packing 

SET TALK ON 

PACK 

SET TALK OFF 
ENDIF (oktopack) 
ENDDO(oktopack) 
RETURN 

oi &*■%> y~y •( nodels ) jJcH J iJbJI IJl* &J*j ( COUNT ) jAl f ljtki~,L 



mtv 



•ufcwaM ^u ^ibjj 



^tdl .Lu-y i*U JL* c^-J ^i UT ^1 .LUL fJ JL ( COUNT ) ^1 
^idl .LUI UL5 A^Xy Lyl^l UUJI 1jl-3 ^ .*-.LasJ J_j ( nodels ) 
ij>Ij Ija iyljScJI iiLJI j^ L^ j± dUij ( "N" ) 4--JUI oU^li ( oktopack ) 

J U-»w» o^ U*j ( oktopack = "N" ) jj. JjVl .^^ J* ^,1^1 iiUJI 
^j ^ o^L»w JL* ^i ^ LLbj ( nodels > ) ^* ^\jJl i^lj .UjUI 
j. f j>i^JI jl »L*- lifi £>JI II* ^ o^U-, JL* ^ ^ lil L.I .IfcU oWU 

.JL-Jjll UUII JI ^U^JI 4> ^ iyl/JI IXUJI JLL3 ^V yUll 



(_-?! oUL, ^3j IjUiJI ^i 3u,L£iJ| iiUJI Ijlj iU»>til J^i L.JUL*.j 

J!*- ^ LJ" .LfcU oL^U ^ ^ ^xJI c^-JU JL^UJI ( CLASS ) oyJIj 
aljl- l»li .Ujl>I SaLoJ ju^. r i L^IT o"5U-JI »i* £__ ju^, $* li| f ■>•-•" 
IJubj .jfc^ ( IF oktopack < > "Y" ) ^1 ^ iy >jl\ J^tJI p Uo>l liUiJ 
oi !]*»■*- £. OiLc-,1 j^ jUI J^JI ^ ^ r JLnz«JJ >T Jl> J>f J» JI ^ 
l^j fJiio-il Ji-ju L.jllxj .o'jUmJI f l3,i l^j iiLUI Js. l^jjju, ij5j o^U-JI 
jjj aJJJ iK-aj .( delrec ) ^-iill ^i ^1 II* ^^ ^ ajaLuJ ^^11*11 J»vJI 
II* jLjSI ^ ^ .J^JI II* JI ^ijil JJiiy jjpcj ( IF delrec >0 ) J»^l 
*JU LOU ^j f3 J~JI ji J^UU ( DELETEDO ) iJljJI ^J> ^ J^-JI 
fi± l»j ( RECALL ) j-«Sfl ^ljiiii-,lj Jj«-JI II* SaLcJ *i ilL»JI »I* ^ .t^A 
iJL*JI «I* jjSwj ( \ ) jIjlLu ( nodels ) j-idl ,y ;i>>jll o^bwJI jjlc ^LdJ 
o!5l»v* JL* jli" lili .l^n— . « Jbjj "if jjiJI o^UbJI *-*> iiUi-L .ji^Jll .ji ,_^> 
iuLiSLj o^Lk^JI a-j*> A....J.J ^UJI Jlj— JI J^ lum >ju>tJlJII j(j 1^,,. « il^ a-jL 
Juia JLJLj ( IF oktopack < > "Y" ) i»^iJI js~ f JL* JI ^i^ II*j ( Y ) 
yH\ f IJLid-.L ^-Jll 2UL* r U;l (^j j-oljVl »I* JjU o-«j .( ELSE ) jl« ^-.IjVl 
^Vl f laic-,1 J^5 ( SET TALK ON ) j^i\ f ljiic-,l #3 *;i Ji>^y .( PACK ) 
gj>yi ^ ^ .jtJLI SJL* f L3l J^ JJIjJI SJU^JI f aiwLJI ^^ J* liUij (PACK) 

.( RETURN ) jJi\ f laic-.L ^^^Jl ^-b^JI JJ 



NfA 




£JU/f *>/( 




tjjt-Mf j> 



♦ ♦ 




jl&lJI A^xayl 



^wi jjaiii 



^uur 



m\ 



,lfclJI -i*»>3 



LwL^j Uj>Jl £ilJaJI Ju-i" ^ p^UcJI £~3 ^\ ,JlJI ^j ( Stock Control ) 
Jl jai jtAJI »Ju» ,jj oLLJI -Ltljj f ljL^i«lj .Uj*ad\ g-iLaJlj ojljJI «.' i-i|,M 
£^i oL£JI li* ^ ,^-tjj jJj .i-L*JI »1* J-«. IjiijJI ^j 3-bj^JL. uLiS" 

oUL. Jte- ,>* ( Batch Updating ) ^d\ J^jucJI f Lk: ^jiio-j *ji *i^> ^-.IjJI 

« jLjJI oU—> £*Ijj— g- ^^" '■** -^Hj (^*i LJ" ( Transaction Files ) Z^^JI 

.J-l£i- f Ui; .lii? ^IJI .j*JI ,y j-j^l ( Accounts Receivable) 

fLkdl l » #M £ N - NY 



will I (^w Lfljl obLJJ oLiLo tJix. « ^...frl JLoLfe Uuaj oj*-^' fLk '. ^"- 

Ia^I oL^Sfl ,>* oliL, J^ J-zi, ^^--ijl ciUI IJubj .( Master File ) ,^-^1 
yJUl c^J ILJUlj ujL^. Jf j*-, JJ ZiLbVL .JL-aVl «i* i-J" Ji- j>JL UL> 
jJUI ^Ij ( Reorder Point ) *J .-JO J^j ( In Order ) . i • «)\ li* ^ 
obLj ^ .i^ L i jl Uul ^-»j US' .ii\ji^.j *suo ^i;.n\\ \le> « lj— *ii ^JLtl ( Vendor ) 
.*JI J>-*JI f Jio-il J*. J^-j ^z* o>JI <> <-&-*• J* jl^- cr* 

«j>J.I oLJSfl Xj> js. oiiL; j—ii: oliL. ^oi La,? jjUJI -Ui; ^Jkj, 
oUU J-ij oliUl »i* j^-Ij .( Transaction Files ) *5>JI oliJL. ^....t, o>dl ,y 

JjjJI Sjjjlj |Jjj Z^-S" ^Lj £*JI ^ ,_^«J J?**" »^Lj Ji* ijLLtfSfl ££ jtfj* ^ 

.( Sales File ) oU-JI .JL. *JUI lie. t ^ -iJ 

Jl LflU-if fSJ jA\ IjujlJI .Jli^Vl ,>x. oLiLu , aT_, >I *S> OJU JL>j 

.( Newstock File ) jj^ 1 

( - \ - \ V ) &JJ\ cr *5!jUI oliUI »Ji* ,>- S5XJI *Ja»X. jSl^, 

.jpJI ^j Ji> jjbj ii^UI cLiUI ^ li>i<. ^i» Jlub i J5LUI ^ ^.^L, 
*i> ,>fr pi* ^ill ( Key Field ) ^liAll Ji> ,^— j JiJI li*, ( Part number ) 

.JttiJI oliUI Jb, 



MV 



/UalN -ijjaja 



Master File 
Records 

Part number 

Item name 

Amount in stock 

Cost 

Amount on order 

Location in store 

Vendor information 



F 



£ 



I Sales Transaction 
File Records 



Partnumber 
Quantity Sold 
Selling price 
Datesbld 
Customer name 
Clerkiiame :; 



* 



INewStock Transaction 
File Records 



Partnumber 
Quantity received 
Purchase price 
Date received 
Vendor 



( \ - \Y ) J£i 



(Key Field) ^Lull Ji* y - \v 

»Jui> Ju; ,>£-«j L yZ> oLUil »Ju> j^j dlj^JLo Jji> JjJjO «_ou oLjLj ju-Ijj oliL> 
t-illl ,y Jjw JSU ( Unique ) la>^ oj£j oi um JJbJI IJL»j .*?&• &* oliUI 
oLilil ^ J^UIj £>Jlj p— ?l ur*^ j-^ <j' v*^ ^ •( Master File ) ^—sSpJI 

.«»LUI 



C-> ^LzL« JjUS* i-jL^JI *5j .^uw !iLl« JjjJI ^ . ( Unique ) layLL* ji^L. 
.j/a^wi ^1 oUL, J^. Jj_^a»JJ ^Ui-5" (Social Security Number ) Lr -»<-iJI 

.( Unique ) ijcu> ( Part Number ) «j> p3, *J »> J5" ji 



Mi 



-*rf»*a 



fUUI JJ5lfc-j r - NY 



U.JLDI c**J iOLoJIj ijjjAll <oLa.JI <. < ul.7 n i » i >»" .., »l) ^ « ... _ > »uij < ^.,<ftj 

»i» jjiJL ^-"' tsj*-j*» j**- JLol ^1 Jl>iJ -ajlcj -jj^l ^ £JLaJI «Jub jl£*, 

oilll Jl tiA-«» Ji' i— S" iiLi.lj L^j ^UJI ( Part Number ) *>jJI ^3, j_,jl»w 

iJu»uij j>*lL «JL-»""5II UL> j-^-H i*-*" jtU^' cUiJI jJjj 0' V^*"^ xr-^j-" 

.UT J^JJI oLU» «LiJL (.ji US' l^JLt c-^, ^ill j^l 

l^xjUl oL-^>ll iJAiyCi JijIjJI i_JU«0ll Lulloj Li2jl ?*■■■■_' jl <-->>w U5" .ijjjLUI aJjj 
^^-WjJI <JJil ^ t*>>>ll ObLJI i^iJL9w LJI .UaJI .jJU jl y^>u Li" .j>kll ^j 

.( New Stock ) jjl^JI o«L.j ( Sales ) oUJll oiL. ,>» ( Master File ) 

oUlll JyLp- juxm 1 - NY 

JUJl^w ,jt> CjLjLJI e-U-13 <_iLo Jji> JUJLmI] IL-fj J-f-l jj^J jL^»'l | ihi"' ,J> 

vjUl Jji> jlumJ ^LLJ .LajLuI ^-jjJLLil jjjUiJI ^j «_aJULI Li* j_* Zj^JLLII oU>AI 
«Jl* j*-li .«_iUI li* j-« A^JLkll jjjlfcJI oLpw I—Iji *jo ( Master File ) ^ _^" 
jjytJI Li* .jj*dl ,_^ «^>>j^l »JLue»Vl ZJl> jl «_i3j^> n-^yj ^JJI jjytJI ,** ^jjliJI 
.IjiJI j*-y jjiJI ,ji .J»JI Li* j^i 0>>jll ^LJUIj «J»JI |fc-.|j 0»JI (*5j J* J ■"■*-_> 

.cjkJI IJjs j^i >_JLLII c^j ;L*£Jlj jj»JI ^j .j>JI II* jlSL«j 

AJiU- j-« pjii ( Reorder Report ) yJUJI SaUl ^^^je; j^— j JA jjjZi JL*, 
yJUl coo j^jJj u . ...j >>T f^jjij ii)U* ji Li" .JjjiLlI ljLl^VL i*iL5 ^j-fr 
oULfe. JL* ji L5" .LjJLt. ^jLJI oLl-,VL i*;l5 ^jju, ( On Order Report ) 

.»JUJL> iJL^s.1 cl^-iJ UjIju?L >jiicJI .ji (_^dl ^Ij-iJI 

obLJI Jji ( Master File ) t^-^JI «_aJULI J^jLij jl i_^j c»l»>JI »I* j^Jj 

: iJUl 



Mb 



Part number 
Item name 
Quantity in stock 
Purchase price 
Reorder point 
Quantity on order 
Location in warehouse 
Vendor name 
Vendor address 
Date of last update 
Date of last order 
Quantity to order 

p—k ^JL ^Ull ^vaiwJI ^[j ( Invoice Number ) ijpUJI ^ jL-SJIj .>«JI ^j 
^j^kj jl vchj ( Sales File ) olxJLI «jL« jii dUJd, .^Jl £yb, gj\ jK~j J— jJI 

: I/ifl cbLJI J* 

Part number 
Invoice number 
Salesperson's name 
Quantity sold 
Selling price 
Date sold 
Whether posted or not 

tiLo jb dJjJ .( Vendor ) «jLJI *— lj jjjjJI j^bj . IjriJI ,>-jj »jl>tl a^JIj 
: iLrtl oULJI jl ^^ jl v*« ( New Stock File ) ojl^JI oLu.SH 

Part number 
Quantity 



,l£jj| JLrfn^a 



Purchase price 
Date received 
Vendor name 
Whether posted or not 



Olildl tJutlS 



6 - NY 



^UU JLtljj oliLo *£A5 Js. fjj2*t JiUJI ^ jjUJI f Lfeu jli ^Ut^l J-- Li" 
>LuJlL ^U Lj.jb.i Zi"j> ,>-iLoj ( Master.dbf ) *— { 1 >£Jj y— -u>II «_oJULI ^j 
.(Newstock.dbf) ,^—i, SjjIjJI <JL-»SlL ^U >% (Sales.dbf) tJf *~ i) 



( Master File ) (^--SjJI OJll «UjI \ - a -. w 
( Assistant) ju.L-11 g-ljjj pjl^j &J> ^c ^^>J\ «_iUI «Lt;l ^l, 

: ^tf dUij ( CREATE ) ^1 f L^-L Uj »j^l c^j 
CREATE MASTER 

( Structure ) v^bLJI 5jlc.L3 dtL> JiL* LiLi j^k; UUJI »1* ^j, 

jl Lj-ijJI ^IjjNl iJLCj djbj *s-jjj Jji> Ji* |*J ajI^S" LfJLji' 0^ (^i ij-^' 



Field 


Field Name 


TYPE 


WIDTH 


DEC 


1 


PARTNO 


Character 


5 




2 


P_NAME 


Character 


20 




3 


QTY 


Numeric 


7 


2 


4 


COST 


Numeric 


9 


2 


5 


REORDER 


Numeric 


7 


2 


6 


ONORDER 


Numeric 


7 


2 


7 


LOCATION 


Character 


5 




8 


VENDOR 


Character 


25 





uv 



A UalH J^aja 



Field 


Field Name 


TYPE 


WIDTH 


DEC 


9 


VENDOR_ADD 


Character 


25 




10 


DATE 


Date 


8 




11 


ORDERJDATE 


Date 


8 




12 


NEW_ORDER 


Numeric 


7 


2 



^3, Ji*Jlj •«-»jj»' *— *> ,>» oj&j ^j*- J** >*» ( Part Number ) .>*JI 
dir^ Cr* o^i u*J* J*> j*j ( Part Name ) »j*JI ^-1 Ji> j> ( V ) 
^ijLc J_z* jj.j ( Quantity ) Z— 5JI J-«». jj» { V ) ^j JJ^JIj .13^ 



CfT^J 



\JL| 



f l3J 



^. Oj^O ^iJlfr Ji> j*j ( Cost ) . Ij-iJI 



Ji*jj ( Reorder Point ) vl^' jl> Ji> j* ( o ) ^3, Ji*Jlj •&&£* 



Lu. 



f Ujl 



•>- a 



ij&Oj >-«:.all lift yJLU »iLc-l «jllc- 



^JJI a*JI 



Ji> yb, l^JJ? JL>l*JI *— SJI J*>- j* ( "\ ) ,»Jj JisuJlj -frsiri*- ,5-4; 

*— > (y oj£~* l^j*" J-** - >*j ( Location ) j>«ll ^ uLl-JI jl£- Ji> 
0^-* <Jj> J-*" >*j ( Vendor ) ^sUI Jjj> ^* ( A ) ^j, Ji»Jlj .o>j> 
JJb- jj>j jjUI Cj'j-- 6, J-* 9- j* ( ^ ) p3> JjwJIj -lJ>>- Cftr^j *— •*■ ,>" 
>T gjjb Ji» >b ( V- ) ,Jj J*»Jb -liv* Oir*^J *-*»• 0-* i*^ - t^J* 
( ^ ) pJj J«*Jb •«-*!>»■ VW 5 0-* <I)J^-° J^^-J** 1 >*J < -*^ *i**»«3 
( \ Y ) 1*3, JjlJI_, .( Date of last order ) uL-JU «JJ» >T jj,b Ji> > 

,>- ^Ul crtAJI oL^ ^ ( Key Field ) ir ^l\ JJ^JI >* .^Jl 

USE Master 

INDEX ON Part no TO Master 



MA 



*UalH -irfnfa 



(Sales File) oU-ll uUU *UjI y - o - \y 



• Lul j*- US' iL^I J^ m ( Sales.dbf ) oL^Jll «_iU .Liil ^ 
j^ ji u» ( PartjlO ) .J*JI (Jj Ji> ;>i *i*>^-* v^Ti* xr-^jJ' «JM' 

aJJ) .LaLj j^-uJ^JI (Jill JJL* Jjj> <..„■>«■> Jj-^iJ < oJLLI IJL* ,j3 \ijj>j^> 

: jft\£ Jill 0^ 



Field 


Field Name 


TYPE 


WIDTH 


DEC 


1 


PART_NO 


Character 


5 




2 


INVOICE_NO 


Numeric 


6 





3 


CLERK 


Character 


12 




4 


CUSTOMER 


Character 


12 




5 


QTY 


Numeric 


7 


2 


6 


PRICE 


Numeric 


9 


2 


7 


DATE 


Date 


8 




8 


POSTED 


Logical 


1 





(J, JjLwJIj .( Part number ) «j*JI ,*3j JJL* ^ ( \ ) ^ JjuJIj 
0-° Cw^-° »i iJl * J 2 * j*j ( Invoice number ) ijpUJI ^j Jfc. j* ( Y ) 

j^So JL» jt>j p~}\j *jUJI t-itjll *-J Ji> yb ( f ) pjij JJmJIj .*^j' IXm> 

jjbj (Customer) J— *JI p-I Ji> >* ( t ) ^»j Jjij-JIj .liy* ( ^Y ) 
2LJUI £** jj> ( o ) fSj J^JIj -lij* ( W ) &* &£** tAr* J- 2 * 

i>*»5jl> c^jl i*- 3 0-* 6j^-» j/iJ-fr Ji> y»j £*JI jiu* Ji> j* ( "\ ) (»5j 
i>" ij^-* (j^ 13 cM* >*> C?r" £1^ lM> J-** t V ) fJj lM^I* •Crsir-* 

JJ> jAj (Posted ) J^-j^JI Jj> j-* ( A ) jtj, JJtoJIj .oj>>. LjLj 
olUI Jl cii-aJI oLjLj J-*^ ^ \SJdJ .xicL^u ( Logical ) ,j.lh;« 



\l\ 



-**»*a 



( Dot Prompt ) Jh*J\ 

USE Sales 

INDEX ON Part no TO Sales 



Li" UjJaJl ijJoj ( NewStock.dbf ) iijljjl oUl^VI aJL. .Li;l ^ 
( Part Number ) *±*J\ ^j Jji> i>rj j^^ i^.^, ^ c u^I ^ 



Field 


Field Name 


TYPE 


WIDTH 


DEC 


1 


PARTJSTO 


Character 


5 




2 


QTY 


Numeric 


7 


2 


3 


COST 


Numeric 


9 


2 


4 


DATE 


Date 


8 




5 


VENDOR 


Character 


50 




6 


POSTED 


Logical 


1 





fj, J-**Jlj .( Part number ).j*JI ^J, Ji> jj» { \ ) ^ J^JIj 

< 1" fa" . * »l5jl ****» ^ UJ^° Ji-J^ Ji> j*J •ij|>II A~»£JI Ji> jj> ( .V ) 

l»3j Jji^JIj .<Jjj*- LjLj £-« jj^> -t^jjls. Ji* jj>j >-L u ^JI Jj-*»j ^j,b 
&£*• l^j* J-* 3 " j"j Hij^^i r 5 ^*" ( Vendor ) ^Ul ,*J Ji> >* { o ) 
^^k.. JJ> jjbj J-s-jjJI JJb. jjb ( A ) ^jj JJbJIj .\±j> &-?**■ &> 
^^>J\ utlll Jl uAjl^JI obU J^ ^ fS^cii f j^ ( Logical ) 



u 



,tfclH J**,^ 



.( Dot Prompt ) ibUI 

USE Newstock 

INDEX ON Part_no TO Newstock 

ju-ljj cULo LfL. J£A3 .oUL. li- ,>• o^fl ^ flbJI Oj&L; l-i&»j 
.( Index files ) ^a» oliL. j^I XftUI., ( Database files ) oliU 

^3 jjy g-^bjJI jji j^jL ^U»j7' i5r-" ^ CiliLJI jlc.1^3 oliU ^-—-^3 Jbu 

IjN f UiJ ^ JjVl f lLJI .1$^ U-i *k?j* l+^Jj Zifc— (JiJ jtfAi Jx ijLjl 
j>lL ia^-jll oL^bU J*iJI Jjjll ^* T^w O^i tfUlj J*UI J JWI 0j>1I 

JjSUj ( Reorder Point ) U^ 1 ■** J[ J- 33 l^ 1 <-» 1 -^ 1 J***«3j ^^ **;l=-» 
gsJI iLe ^ .jo^JI ,j&jll Sk-I* IfJU-al pi ySJI c.U-11 a> >* ^sUI r lkJlj 
l*j ^ ,>JI ( Newstock ) oL^I ii> yb vSJLJI f LkJIj .( Point of sale ) 

. L/ aXiJI oii?jll ik-ljj jjiJI Jl fcJjJI <jL-»Vl J~*~I 

--'j p-*^ l*J»l p-°ljj i«ol J' *-P-iy ii-aj <■*...■■ W o^-*i p-"^j^' <Jp ^JJ 
JL*.y g-.^ Jjtfi fJ i3 j>Vl 130LJI g-UJIj j;>Vl XSADI ^-IjpJI J-JLii fJ i 

.{ Y - \r ) JSLiJI ,>. j^; ydlj 

jlll ^-olJjJI j-* ( IMenu.prg ) ,^—^^JI ^-l-Jj-JI ji J-SL±JI j-o Ji^^L, 

J-* «Uy -^>^l g-U" J-"3 U^ 0- ri l^ 1 ^-sU 1 S- 51 *" J* d^*" 
<_Utl J-«-ij t/JUl ( MMenu.prg ) g-olij-JI Jl ^iiil p_i ^jlJoJU jL^I 
JJ gjfcJI pi ji .o>ll ^ ia^l JL-til Lulsl ( Master File ) oL^bU 4r - tt s J II 
^OSj^. juuUI ( Sales File ) oLu-il ^jJLo JjLij ^111 ( SMenu.prg ) g-olJjJI 
ciL. Jiij ^ill ( NMenu.prg ) g-b^l Jl g^jfcJI ^ jl .Lf«-; ^ ,^1 ^JLl^NI 
.UjUyS *i ^Jl oli-»Vl tJ5j-« iwld ( Newstock file ) oU*)!! 



,UalH -irf±»j3 



E 



IMenu.prg 

1- Manage the Master Inventory 

2- Manage Sales Information 

3- Manage New Stock Information 
4- Exit 



MMenmprg 

Add New Part Numbers | 
PrintReports 
Make Changes 
Update the Master File 



i 



SMenu.prg 

Record Sales 
PrintReports 
Make Changes 

{ V - U ) j£i 



1 



NMenu.prg 

Record New Items 
PrintReports 
Make Changes 



\or 



•»j--j *j*' •»! '"" | £"b>j 






Nor 



igmt Ijil X_lUUI ^■b >f 



i*iUII J^JBtjj fJ JL; ^1 ^«ljjJI >* ( IMenu.prg ) S^-jJI L»:UJI g-^Uy 
.^U^VI *j-- US' ii^UJI ,JiJI a*i UJ^i. a- f JLJ^-JI jL±u ^\ *,,..sj\ 
oIjUj-I i*ll3 ^i»^ft *JiL> ,y« pJj (j—^ij £-*My ii' 0-^ *^j j cj* '-ifc^j'tf jJ»j 
*JjVl ^lyaiJI oLtf J-oiL; £-»lJy ^i JubS" J-3 •aLJLS'j .( Menu choices ) 
S^liS* JJi juy ,>£-, ,^i> g-.UJI -Ua^- Uu^ UJ tf L ( PSEUDOCODE ) 

.ol>iJI *i* lis ^1 ( DBase ) IliU ^1^ i*L ^.l/fl 

( PSEUDOCODE ) iJj^l ol^»J1 a^ N - \r 

fZy ( Tdate ) *~-j ^^iib i/li j*jcj> « LuL SJjlJI ,y «j-«-M g-«^#JI f>u 
Jl}-, pjbJI IJi* ^y. ^ ^ .jjull IJi* ,> ( DATE() ) JUJI fJ JI gi,b .^ 
JjJjJj .JLkX-il >jJL o^l>l ill* ^j .^1 ,1 | »JLJI jtjjLJI yb li* ^15" lil .jlJc— II 
»-i.lj^ ,y 4*lj&£-l |^- ( T_date ) j-*ill 11* jV h> *-^> »ji»iJI »i*j .^jjUI 

X»jUII £«o i-iyJall jLj>"J/l ^S. .JL»w_ll Jlj— j p-ob^JI >jJU *j .K-ab^JI J>li AJyil* 

li* jJbu i^UI ^aUjJI Jl pjiJI *^i *jlmiJII jLx>I J-*- « Ljj .a-»L«I ^k» ^dl 

.jUS^I 

: Ji\S [fJxf ^ ( PSEUDOCODE ) ^-U^JLI SJjVl ol>iJlj 

.*/UJI olj-Jil-. JS" £— • - N 

.( environment ) g-ljjJI 2Xy> y^u - V 

.LlLiJI rt^ut - T 

.JUJI f jJI £yfc| J/IS jJK- .LDl - t 

.^lijJLI JL-aU' ** ili " u*"-^ ^L^ 3 **!> Oi^ 3 ~ • 

X.u/iJI JUU1I JajCj iiLiJI k^i - *\ 

..JLkl-JM jLx>l JLaI^iI - V 

.OjiHI g-lijJI Jl gytll - A 

•rjjkll .JLiwJil jUJw ,jX> ijjIj&JI UbJI jly*l-l - \ 

.( DBase III+) £*by &> £Jt >JI -\ • 



Noo 



3*<-*>^l 1*JUH ph^ 



pj *JL ( MODIFY COMMAND ) IJcS^ C U/VI ^ IS ^»\ij\ U3" ^ 
£-.l^JI jV SJUJI *i* J> ilxL-VI iiL-,1 ^^lk. ^j .( iMenu ) j*j ^b^JI 
jr ,>- Joi J,Vi Lu,Vi jj^i f las-i g-i; ^.b^iij yi ( .prg ) ibz,yi ~l^ 

^bjJI J^JUG -lie. U-5" U3j yjj li*, ( MODI COMM ) LLf ^ !^LUi .^i 

* Main menu for the inventory system 

* 

SET STATUS OFF 
CLEAR ALL 
SET TALK OFF 
SET BELL OFF 
SET SAFETY OFF 
SET HEADING OFF 
CLEAR 

* Create underline variable Uline 

Uline = REPLICATE ("_" , 80) 

* Create memory variable for today's date 

TDate = DATEO 

@ 17,5 SAY "To change date type new date and press" +; 

"Return " 
@ 15,5 SAY "Today's date =" GET TDate PICT "99/99/99" 
READ 

* Set up loop for presenting main menu. 

IChoice = 

DO WHILE IChoice # 4 



W\ 



\jrnj \J\ a«jllB jubjd 



CLEAR 

@ 2,1 SAY "Inventory system main menu' 

@ 2,60 SAY DTOC(T_Date) + " " + TIMEO 

@ 3,0 SAY Uline 

? 

? 

TEXT 

1. Manage master inventory 

2. Record sales 

3. Record new stock 

4. Exit 
ENDTEXT 

* Wait for answer 

@ 24,1 SAY "Enter choice : " GET IChoice PICT "9" ; 
RANGE 1,4 
READ 
DO CASE 

CASE IChoice = 1 

DO MMenu 
CASE IChoice = 2 

DO SMenu 
CASE IChoice = 3 
DO NMenu 
ENDCASE 
ENDDO(while IChoice ff 4) 

* When done , exit 

CLEAR 
QUIT 

: jrttf ^*j ( SET ) ytlj cy l*y*y> &J> 



NoV 



V-SJ-ijH X^iUJI ^bj 



SET STATUS OFF 
CLEAR ALL 
SET TALK OFF 
SET BELL OFF 
SET SAFETY OFF 
SET HEADING OFF 
CLEAR 



Z* ( o ) ^ V USUI j| ^j\ ^ ^ (j V| .JLft y. J* iLfc, J* o^dJj 

^jy J-* ^j^m ( Uline ) ;>lj ^^ .LiL L^ g-U^I ^ ^jUI .j^ilj 
j£~j liLill ^^ >« t>i j^; j| rf4Ji ijl*, . ;>t ^lj IjjSL. (J ZJLUI it^JI 
i^J' £-LW c^ js*=H li» -Li3l 0? iV*- ^ .JJi Jbu &J J ^ ^^ 
i> ! -r*W- **IJ*=-I ^ ^1 ^>Vl iLfi^ll ^I^JJ i_JL ( Public ) L-U *U 

: ^IT ^MJ\ J ^k, ^1 |^ .^ ^ jj 

Uline = REPLEICTE ("_" , 80 ) 

( TJDATE ) ^Ul i/LLJI ^ii. .LiiL Lu, ^^\ &> *iJlill .j*M, 
J*5- ,>* jlfcJI J-AAJ ^ JUil ^ ^jJI ^Ul j*, .v JLJI fJ J| pja pjUj 
J*" 3 *i^i <*> £i>UI JJof J3 fJAiJll ^ l lilj .( MS-DOS ) J-JUJI f L& 
C^=-ii •( T_Date ) ^1 ^i .lj^; j,LJI j^LJI J j,^ ^U^JI ajj jl^l 
J^-^r 1 *J-*JI ^*j -JWI r _^JI pjb jiljj jo,UI lift Jjjuj ZJUII u* ^ 

: IJUJI jjJa-JI ix^ 

TDate = DATE() 

@ 17,5 SAY "To change date type new date and" + ; 

"press Return " 

@ 15,5 SAY "Today's date = " GET TDate PICT "99/99/99" 

ifkjjldl JL^JI obLj .J-. yj fj^ww oj- *JSf lo> ^ (Tdate) _^*=Uj 



7 t m a ijJI a*JUJI £*b>« 

L*j£U jljJuJI ^jjij 3-iLiJI 2—1 JLylj^JI iiUJI o^&J f jJL< pljJI «»Ilj 
fi f5 .1^ jAJI 3L-^JI JuiUJI ^^ ^ olji*" li* Jj-I iw- ^ CuSjJIj fcjjUl 
.( ICoice ) jjcil J> jts>~i\ II* JUfcJj vj^ 1 jW^V 1 0^ r J^— ^ JU— <Ar* 

: JJLJI jjk«JI J5U &> (^j IJusj 

IChoice = 

DO WHILE IChoice #4 

CLEAR 

@ 2,1 SAY "Inventory system main menu" 

@ 2,60 SAY DTOC(T_Date) + " " + TIME() 

@ 3,0 SAY Uline 

? 

7 

TEXT 

1. Manage master inventory 

2. Record sales 

3. Record new stock 

4. Exit 
ENDTEXT 

* Wait for answer 

@ 24,1 SAY "Enter choice:" GET IChoice PICT "9" ; 

RANGE 1,4 
READ 

e*M Ji t^ 1 u* ( DO CASE ) ^' J*"^ £- b ^' a- u-^Ji -J*JIj 

: aJUI jjiuJI JiU ,^o villi ^ .^JtJtl— II jL=»l »-*-»■ Vj^' 
DO CASE 

CASE IChoice = 1 

DO MMENU 
CASE IChoice = 2 
DO SMenu 



\o\ 



CASE IChoice = 3 
DO NMenu 
ENDCASE 

Jl t y>.J\j iiLUI jc-^j X^lj&dl iiUJI .1^1 ^ ^b^JI ^ jjXl .^Jl ^j 

ENDDO(while IChoice # 4) 

* When done , exit 

CLEAR 
QUIT 

DO IMenu 

^ >T ^j tfl J' *i- (5) JlioL aJij (4) Jl ( 1 ),>- ybj cj — LI'^jULI & u 

J~iiJI f Lkj J[ ^ijjJI j^j g-oUjJI jLjS-I . L^ul juy .^jl*j U lJa>%>j ( 4 ) ,>• 

.(4) J LS.^I 1 j i >.o* 

.g-b^JI II* luL3 JLLfr ^k! ^1 iiUJI j£i £-»_* ( \ - \* ) JSLJI, 



YV 



jH 2«jlzii ^ibjj 



Inventory ^systenrinain'men^ 

1. Manage master inventory 

2. Record sales 

3. Record new stock 

4. Exit 
Enter choice 



( > - Nr ) JSLi 



n\ 



j-hHjJI -*UI JrfiAa ^A»># 



£.1^1 JlZ^JI 



UUr J J, ami 3*104 



nr 



QHi+ijU JJLII JtiSil flijj 



( Master file ) ,^-^JI »JUI ,y fc>JI oUjJLdl J-J«-t3j JjliL f ^L £-l^JI 11* 
j~« ijUI li*j .j^Jl ^p tiL-jbU ( Current Status ) IJUiJI ilUJI jua*3 .Jjljj 
(*5j J-** J^ «^ *; ,>»WI ^j^ill .Lul j--, Li" .( Master.dbf ) o-— jj a^So 
ioUJI ,>-. ( \ ) ^1 jUil jLLt g-.bjJI IJUb J-jlu ^ .( Part_no ) .^1 

( \ - \r ) JSLJI jl ^1 .i~Jjl 

^om jjJI <JUAI J,% v > t j vb«L^j ^«,.a» N — M 

J-i-^ L».l>I .j_LoaLj «-«Ijj iiw. ,^-« ^ '-^ >JI <-iill J_Jlw «_oUjj jj^Li 
J*A ^>Nl l—iJI g-.I^JI ^ ^ ^111 ( Main Program ) iJ ~~?J\ g-oL^JI 

.( \ - U ) JSLUI 



I 



Addnumbs.prgX 



Add New Part 
numbers 



MMenu.prg 

1- Add new part numbers 

2- Print reports 
3- Make changes 
4- Update 

5- Return to main menu 



I 



Jt 



Atreports.prg 



Print Reports 



I 



T 



mmmmmm* 



MediLprg 



Edit data 



Orders.prg 



Print the orders 



li 



Updater.prg 



Update Master 
from Sales and 
NewStock 



( \ - U ) jsa 

^.l^JI oi l^U ^ g^b^JI lift UJ>j ^ ^.U^ Ji" ^j JiLiJI ^^ 
g-^ ^ J! £>^IIj i^l i-iliJI ^^ V-^^l *^j ( MMenu.prg ) ^--5^1 



no 



H-^j» -W J*A4a £*>„ 



^--S^II £.1^-11 ^^3 Y - U 

•U"^ j* 1 -* 1 *?~iV *-^' e*u ^* «j^^ awi a* ^ ^^ji ^Ljji 

: jfttf ^b^JI LL£, L* Jc&j J^^iJL a>^J i*t> JL* c-J oUU 

* Menu for master program of inventory system 

* Called from inventory system main menu 

* Set up loop for presenting menu 

Mchoice = 

DO WHILE Mchoice # 5 
CLEAR 

@ 2,1 SAY "Manage Master Inventory" 
@ 2,60 SAY DTOC(T_Date) + ■ " + TIMEO 
@3,0 SAYUline 
? 
? 
TEXT 

1 . Add new part numbers 

2. Print reports 

3. Make changes 

4. Update from Sales and Newstock 

5. Return 

ENDTEXT 

@ 24,1 SAY "Enter choice(l-5)" GET Mchoice PICT "9"; 

RANGE 1,5 

READ 

DO CASE 

CASE Mchoice = 1 
DO Addnumbs 



Ml 



jMrfjjll JJLJI JjiAa ^Ji 



CASE Mchoice = 2 
DO Mreports 

CASE Mchoice = 3 
DO Medit 

CASE Mchoice = 4 
DO Updater 

ENDCASE 
ENDDO(While Mchoice # 5) 

* when done , return to main menu. 

RETURN 



Y - \ i ) JSLlll J) l>ui>J.\ JLiLiJI j^kj gyob^JI IJL* 1J.:.- jjlcj 



Manage Master Inventory y?: 02126m 12:40:50 



1. Add new part numbers 

2. Print reports 

3. Make changes 

4. Update from Sales and Newstock 

5. Return to main menu 
Enter choice (1 - 5) 



1 r - u ) jsla 

JL^^I AiLb[ £.1^. r - St 

LL^ JJSj .( Addnumbs.prg ) ^b^l XJcj ^l> UUJI »i» <y .ZhU\ LjUII ^j 

.JjJimJI 



nv 



S-^jjii OU1 Jjiia fjiix 



JUo^l a_aLa «L-i;l N - r - u 

f Liw-L JjVl JJL^kJI < j-xi^ i*ji*L JUoVI 3LiLi .LuJ ^ 
jLtLJU ^IjJ j^ ,>* j^Ji, ^JUI ( Screen Painter ) JLsLUI ^-.Ij 
J*i- ^ ( CREATE SCREEN ) ^1 *AX &J> ■&* j ( Assistant ) 
j*\j o»L. i,LT j^ &t S-jLUI ZiijUlj .( Dot Prompt ) iLUI ?j*i-. 
■g-"^' '■*•* «_** Jj^ 1 *«i^l f j£a-i~} .( Command File ) 

: ( Dot Prompt ) iiiUI s^. jllc JbJI >JI *Jc* ri ^i '':■'"'.? 

CREATE SCREEN Iscreenl 

.( Database File ) jLjS-I ^j LiLiJI Jji oljUs^l sy~s, j^ jul*, 
jUi-l i^j (^ ( Master.dbf ) oULJI »ju.Ij «_iLo jLi-l ^ J^U ^j 
.ijj .LiLsJI J> Uj^J? kjjiiidl Jji>JI jl~il ^ ^^ ( Load Fields ) 

jUsi ^a .jjlji p-J f u ( ) £1l* jik, uuji »Jub ^ .ju.i"yi j-l^. 

JJ>j ( Order_Date ) O^U »_JU» >T j^b Ji> Ijl* L» J^i»JI Ji" 
*i, jJl£?JI j^jJl* jSf ( New_Order ) «_ii*aJI ,>-• L$JI> t->u ^1 Z :; JJI 
L.i.^11 pi J^bJI JUil ,>. .1^1 jllcj .£-1^1 J>U ,>- Ul U»>L. 
( Blackboard ) Sjj-JI ^yJj JuJUII Ua ,>. ^;j>JJ ( <~ ) ^U^ J-t 

Jl ^ijll dj>*3 ^ iiUJI J* Jji^JI ^l^. JbJ^w ,>- .l^J^fl xj-i 
Ha SJU Jjj^j ,^i} ( Part number ) .j^JI p3* ^LiJI ^j-^' a*-*" 
Jj*JI Ij* j^, ^ JJij .( Display Say ) Jl ( Edit Get ) &* Ji*JI 

.^jLiwJll ik-ljj JjJjdLI J-Ij fS. 

JliiVI j-UJL. J* JiijJIj ( F10) £l^> J* JiiiJI ^ •* Ui V^J 
<y i>^Ly .( DISPALY SAY ) Jl *JL>^ ( ACTION ) jUS^I ^ 
.iiUJI &> .y^\ ^ ^UJI ^j-iJI *>**" 'Li^-I ^J^ 1 »*» 



V\A 



jw^jjll -UJI J**&a $*bfj 



pjj ^L&JI Jl £^1 ^ JU-iVI iili p-^3 ,>* J-j-UJI o-* ^Jj 
r ...^ £^ ( r - \ t ) pjj JSLJIj ." Ua " v^ U^- ,>- ( o ) 
.^.LJI v—> >T J£i j;! p-~a5 o^-i» J^-^ 1 ^^ C-^ 



Master Inventory File 



Part number 
Part name : 
Quantity in stock : 
Quantity on order :| 
Storage location : 
Vendor : 




Date : 
Unit cost: 
Reorder Point 





Name 
Address 



( r - u ) j5Li 



(PSEUDOCODE) iJj^l oljLsJI ibf Y - r -*U 
( Addnumbs.prg Jg-ob^J SJjSfl ol^kJJI Julys' pi iiLJI p~»~aj jl»u 



.*j ^UJI j-jfUl <JL>j (Master.dbf) f^-^Ji «—«lll ^zi pi 



t^UtfVlll II 



T^*** - * i**i 



.Al3U»l (_>jJLUI (_il«aJI *3j ^£. »J&iJMJIj»*i |W 



-\ 

-V 

-r 
-I 

-0 

-V 

-V 



\\\ 



4-yjjJl am j^AAa ^ M 



oUL, JUo? JUi-Jfl Lili ^ «^U,| ^ iy>y. ^ ^J\ tf lil -a 

( Addnumbs.prg ) a»U»^I ^.b* ^ r - r - u 
^ ILUI 5^-. j-. ( MODI COMM Addnumbs ) y^\ 1A£ ^ 

************** *Addnumbs.prg 

* Add new items to the Master fde 

* Called from MMenu.prg 

USE Master INDEX Master 

* - Set up loop for adding new part numbers 
Partnumb = "X" 

DO WHILE Partnumb # " " 
CLEAR 

@ 2, 1 SAY "Add New Part Numbers" 
@ 2,60 SAY DTOC(T_Date) + " " + TIMEO 
@ 3, SAY Uline 
7 
? 

* GET proposed part number 

Partnumb = SPACE(6) 

@ 15,6 SAY "Enter part number(or press Return to exit)" ; 

GET Partnumb 
READ 



W 



sm+ljH JUI J*iA3 ^Aiji 



* - Check to see if part number already exists 
partnumb = UPPER(partnumb) 
SEEK partnumb 
DO CASE 

CASE Partnumb = " " 

CLEAR 
CASE FOUNDO 

@ 20,10 SAY Partnumb + "already exists" 
? CHR(7) 

WAIT 'Press any key to try again' 
CASE .NOT. FOUNDO 
APPEND BLANK 
REPLACE Partno WITH Partnumb 
REPLACE Date WITH TDate 
SET FORMAT TO Iscreenl 
READ 

SET FORMAT TO 
ENDCASE 
ENDDOfWhile partnumb = " " ) 

* Return to Master menu 

RETURN 

ObLJI JJLfrU ulLa Jtli *^j dUi Jbu .4jLfrJL£-.L *jUJI Tt-oUjJI JUJL»u 

.( Master.ndx ) JjUII ,j-^iJI uiLoj (Master.dbf) 

juu IjjI^JI ZiUJI .^jjio J}U j-. J.JL, ^•L;_ r JI ^ ^lill .>Jlj 
^ ( X ) iJJIj .( X ) iuJUl *\k±\j ( Partnumb ) ^iyJI ^jcll .Liil 
JLjLj Iju, |»j .»jl>(j Xj-o Jj^ll Jji IjjIj^JI liUJI JLjLj j— ii3 ULnJI »1» 
jtyLJI j^^e. £_» ( Header ) J^i* ,J»j^j i-iUJI £— j 2L,L&JI ilUJI 
fjj\ li* CriJ~J ^L^! Vj^I '-rrJ' fb »>* f ■**£-! I Jlj- f^j fl cJjJIj 
Oji Jl>aVI cy&* J-t JaJuJI o' ^k>U» v^«jj .( Partnumb XkJ£1I ,_^ 



^Y\ 



4-WJjli -UW JrfiAa ^^ 



: XJUI jjkJI j,. jjS^j .j*JI Ijybj .iL-i,!! 

Partnumb = "X" 

DO WHILE Partnumb # " " 

CLEAR 

@ 2, 1 SAY "Add New Part Numbers" 

@ 2,60 SAY DTOC(T_Date) + " ■ + TIME() 

@ 3, SAY Uline 

? 

7 

* GET proposed part number 

Partnumb = SPACE(6) 

@ 15,6 SAY "Enter partnumber(or press Return to exit)" ; 

GET Partnumb 
READ 

oUll jl A-.J -tr-ty^ 1 • JL11 cp *^ r»j ** ^M r < Uppercase ) 
.(JJI IJ* &£. (1«JI ^ ( SEEK ) j-»Vl ^oic-j «sUJU ^^^ju 

: iJUl jjii-JI Jx. ,j»JI Li* ^jity 

Partnumb = UPPER(partnumb) 
SEEK Partnumb 

<J>ju L« J-e- «Lj jlj-ill ilioL (jax^ij k-oUj-JI fr» j-jIj-II «j-»«J!i 
y^u lift jli ( Partumb = " " ) j^ ^-^ JM ^Wl ^j .jJAsJLI 
.( Partnumb ) «>> ^3, J\ Vcf &> JUaVI ^bL. J* Jl***. f j£i-JI J 
j— '"*' Jr; i*^ 1 j-^ 1 -M^ r 3 S-aLiJI £— - ^ SJLJI »Ju» ^j 
J»j-JI o^ SLyl^sll *iWI &+ £j>JI J! i*^ l-^J •( ENDCASE ) 

.ji^jV JLyljfcJI JiUII Jjl J ijp-jll 



\vr 



j-^j^JI -iUI JrfiAa gjbj- 



,j*JI Li* oi ^ Li* jU • ( CASE FOUND() ) S-jUI ilUJI ^ 
J J £*»j3 *JL,j ^^ju (.JioJll A*-i3 ^ idJJJ .tiill ^ JU-il J~- jj 
j-Vl r Liiou*l j-o *~s)J ^^1 J-JLiJ Jl iiU^L oLJij .ij>^* fJjJI Li* 
c Li. ^i J* f jiicuJI -ki* jUiilj 2^11 iJL^JI ^^ <> ( WAIT ) 

oi ,>Ju II* op ( CASE .NOT. FOUNDO ) i^l 3LH^Jt ^j 

g-.LfJI jli iJUJI *i* ^j .(JJll Ji-li a^-j-* ^»i L5j J*al ^JLiixJU 

>T j^jb Jl>*| ^ U - .( REPLACE ) ^Vl j^ ,>t g-^l *J»~L* 

.Uui ^>lj^JI Jj> ,>*. ( Date ) JjJbu 

: SJUI jjh.i.ll ^ .j*JI Li* o^Scjj 

DO CASE 

CASE Partnumb = " " 

CLEAR 
CASE FOUNDO 

@ 20, 10 SAY Partnumb + "already exists" 

? CHR(7) 

WAIT 'Press any key to try again" 
CASE .NOT. FOUNDO 

APPEND BLANK ' 

REPLACE Part_no WITH Partnumb 

REPLACE Date WITH T_Date 

SET FORMAT TO Iscreenl 

READ 

SET FORMAT TO 
ENDCASE 



■wr 



£"*j.»fl -iW Jrfifcj ^yf 



c j±^lA\ ijj jl \i\j .( MMenu ) ljr ^>J\ oillL Ju»UJI :_ _•- ,» UUJI Jj 
I*JUJI Jl £^1 ^ ilLJI >x* ^j ^ ^i Ji> 3 j jji JU.^1 c Ui. 

a*Lil £»L^ ^JljS jj> ^x. ( Master.dbf ) ^,-w^l alii ^U; t , ..,,*- j^. 
^k; o-^ibJI ^j .( CREATE REPORT ) ^Vl f U^„L jl ( Assistant ) 
jljit j^»>; «>JI *ii^il oXoUil JLS-il l^t ^ ^ yJI jjjytJI ( .,.,^- oljUSl 
c l±X\ &. LTj .^Vl o%.Ull Jl oU?U J>JI .L-ij (Page Title) *~L*JI 
^j*} .( Command file ) j*\jl\ (jU jjjj* ^ jj^izJI ^.^.^J ^>i ii^ JL* ^U 

utLJU iL-JLj .IuiU. ii-aj jjyfcJI JSwj J_^2»JI ^Ul JUfc*j ^ jS\ £>L&L>[ jtJ3 

.*j L^UJI jjylJtJI < Liil xlc. ,^4j^JJ ^yt^ oj-j ( Master.dbf ) ,^—-5^1 
: ZJUI >lj>Vl ^ \^-ji> w ^^-^JijJI v_iLJJ Ajjiiuo jjjU; IjujI JL*j 

( Current Stock ) JUJI o^jj^dl j^Sa \ ~ i - \i 

~J viw;> ,^-a uj-^l c*-» ciL^>bU JLxJI <_I3jil r--Z>y± viH*-" '^-" 
. IJtSL#>_j Jjl>jJI ^ji^ij oj^' ex* *jl^-°j *^-° •A>?'^' *J>*a)I i~»£Jlj *-i. : .- ^> J^ 
ikiJI t vr t.,a £-• ,^-JLJI ^jjx^il "UcS &*J* ,>t vir**^' '•*■* *Lwj *^jj 

.( Dot Prompt ) 

USE Master 

CREATE REPORT Allmast 

^Ijj jy+b JJUJI »I* ^ Jm."5L} .ji^l «^- f-! j* ( Allmast ) £ 

fj' g-a.^, JUII JiLJIj .^jJUall ^yCJI Jili J-* J^«i ^i> Lflli-il 

.jj,1lII a?uL3j L<9l»JI o!5l-»l*ll 



NVt 



a-*J,H -AW J^iia QAijj 




Page Title 

Page width 
Left margin 
Right margin 
Lines per page 
Double space report 




( i - u ) j£a 
^W ( Columns ) j-ykJI •■***! oU^« juj^s ^ L^ 



■;-■■■■ >-":■■- - : ■ , --■ 1 




ssa«wW!WS««««ft»s(M 


&>)$&&i&imjjmmwssffissii/i 


*SBW8SftWSS8t 


BtBSiSSWffilWSSWSSBS 


S»W. A«S*AaS5 ■ ~ 


£ Column 


Contents 


Heading 


Width 


Decimals 


Total | 


No. 










p 


:«s*& :™:-.«*.*;:™ 


■:-:-:■ : -Ji-.-.o:-:-.- ■':■ v;-:- 1 '"-"-:«-:■:-■' 


:■:-: ;-:-i;-; ~ "«■; :-:-;-:■--:-" -. : ■£■■-:-:-: • -v:-. :■ 


■■:->:-;-:■ :" : - --:-: :£-:-:- 






1 


Part no 


Part No 


6 






2 


Title 


Part Name 


20 






3 


Qty 


On Hand 


7 


2 


N 


4 


Cost 


Unit Cost 


9 


2 


N 


5 


Reorder 


Reorder 


8 


2 


N 


6 


Location 


Location 


9 






7 


Date 


Last Update 


9 










( o - U ) t 


jSLa 







^fltf. ji J^\ ^ ZJUII iJL» ^j .( REPORT FORM Allmast ) ^H\ 

: ;*i» 



Wo 



O-^jH JU\ Jrfiia ^di^ 















Page No 
02/20/90 






Current Stock 


Si™?^SW# 


^&^r^&A01^i 


Ml©:: : > 


-■'iK* ■:, S. '-*£&■ ■■: - > ■.' 


Part 
No. 


Part Name 


On 
Hand 


Unit 
Cost 


Reorder 


Location 


Last 
Update 


BBB 

AAA 
ZZZ 


Floopy Disk 

Printer 

Bicvcle 




40 
10 
10 


14 

800 

80 


10-A-lll 
17-B-233 
19-C-175 


02/15/90 
02/10/90 
01/01/90 





( Reorder ) aJLUI a* jjjjb r - I - \l 
l-T ( CREATE REPORT Reorders ) jJi\ ^J> ^ .jLiil 

: Jci\ J5LDI <y Z»v2>jll oX»UI r ljbCL-l fv .^}^i\ 









Page Title 


Goods to be Reordered 




EWKtSSSRSPSSSSaK^^ 




Page width 
Left margin 
Right margin 
Lines per page 
Double space report 


77 

1 



58 
NO 









{ V - U ) J£s 
^i\£ ( Columns ) jj^JI U^cl oLp*-. Jlial ^ Li" 



>V\ 



a^^l am j^iia %A>ji 



( A - U ) JS^A 











1 Column 


Contents 


Heading Width Decimals 


Total ! 


1 No. 
1 


Part_no 








\ 


St., m» i.at««iw«» vmtOi **W '«W£WH P*WIIS!*SS^S>S»fca 


t'SSWtWWo* ■ 


Part No 


6 






2 


Title 


Part Name 


20 






3 


Qty 


On Hand 


7 


2 


N 


4 


Cost 


Unit Cost 


9 


2 


N 


5 


Reorder 


Reorder 


8 





N 


6 


Location 


Location 


9 






7 


Date 


Last Update 


8 









: ,/fl j^l jfri *IWI a* ^i ( REPORT FORM Reorders ) 



■ . - ■ V : ., - ■ ■■:':- .; .-.. i 


02/20/90 Godes to be Reordered 


,, ix^iXtf&ifl&K 1 ' iil^K^-'^^^^^^^^^^^ : ^&^ 


Part 
No. 


Part Name 


On 
Hand 


On 
Order 


Reorder 


Vendor Name 


AAA 


Printer 


5 


5 


10 


Micronet Company 





( \ - Si ).jSLa 



yJUdl c*a ciL-»Vl jjja f - i - U 



^•Vl Jj^> &C LuLJI ji,LaJI JJL- iijjkll ^^jLj jj^UI lift .Liil ,*ly 
JSLDI yi S^j,ljJI cCUUll JU*I ^ ( CREATE REPORT Onorder ) 

: JUII 



wv 



d-sH^n am jrfiju ^b^ 



U»^AJJ^JWJ.^UlJlM-l..a..-«- 



Page Title 



fam»«.»'-,VMA{,.,>,i«l t t) m y» 



Page width 
Left margin 
Right margin 
Lines per page 
Double space report 



Items Currently 
On Order 



77 

1 



58 
NO 



< \- - U ) JSLft 

JiLiJI ^ la^l oULJL fcLc^L Sjl^VI oUU JUol ^ L5" 

: JUI 



j Column 

: no. 


Contents 


Heading 


Width 


Decimals 


Total I 












i 


Order_date 


Order Date 


8 




2 


Part_no 


Part No 


6 






3 


Title 


Part Name 


15 






4 


On-order 


On Order 


7 


2 


N 


5 


Cost 


Unit Cost 


9 


2 


N 


6 


Cost *On_order 


Total Cost 


9 


2 


Y 


7 


Vendor 


Vendor Name 


25 









( \\ - \i ) j£ft 



.( REPORT FORM Onorder ) ^Al Llrf ^ ji^JI uMj 



\YA 






Page No 1 
02/22/90 



Item Quantity On Order 



TWS 



m 



"" ■ >" , , y j " ygs ' j ' 7 






Order 
Date 



Part 
No 



Part 
Name 



01/02/90 



AAA 



Printer 



On 
Order 



Unit 
Price 



800 



Total 
Cost 



Vendor Name 



4000 



Micronet Company 



TOTAL 



4000 



( \y - u ) j&a 

iilxXjl DjaC- ,ji tijjfjli ObL-JI «^Mh»Cj mjju jJjilil jl li* Ji^Ly 

j^dl ,> (Y) jUSVI JU.il &~, jU» oV dUij .( Total Cost ) USUI 
.Uu^l obLu ^UJI JSLiJI ^ ^j Lj? ( Total? ) 

( Purchase Order ) .Ij-UI vJJ* i - t - \i 

^Ujj JU> ,>-« LfjLt J>-a>JI ^ j^ill ^jjUxJI jl>I jj- Jj-tJI vJLfc 
oUU (.xic-il Jjc jayu q-»XjjJ\j .( Master.dbf ) y-wjJI t-AUl J-JU3 
,>* »Jjjj ^ill ijjJI yJJ» ^j&s-JU ^jo, *_JJjJI o> Jl ,_La3 ^1 iJL^I 
(JL-»^I ^ t_lL^ J£J ZJUI LiLiJI g^UjJI ^.yu *£~> .*jLl-*^I »1a 

.UWI J> Jl J-c ^1 



Part number 


D-100 


Suit 




On hand 
On order 
Reorder 
Unit cost 


30 

10 

50 

100 




Order now many ? 







( \r - u ) j£j, 



m 



a-rfJjM -U4I J**Aa ^uli^ 



^>j ( On Order ) l«JJ> ^UJI JjJI iJUj oi ij| ^ ; 3j ^j ( Suits j 
.jiujjcJ Ujl^ o^U»ll JjJI ijift ijp« dUj Ja .Ly .( Reorder ) JUI 
jl^ ^ .,>-ll Jlj — H f LoI *uJI 11* JUoL f j*a-ll f yL, .j^il ^^xUI 
juuj .( Reorder ) uJUl j> Jl cJL*j ^1 oLl^I y5L ^ iJUJI ii» 





""-'■:^:' : -;->-;JijJf| 


Please send us the following itmes... 






10 Suits 100 1000 
5 Printers 800 4000 


Total Cost 5000 








Wk^WSS 



[ \L-M ) J£i 



Ji) 



IJLdl ywLjj a^i rfi 



- I - u 



^1 i^iUIl ,y»j jjjUdl i— --SjJI JuiUII ^.^ ^ill ( MReports.prg ) 
oULt jv>bjj jj> j>VI jy-abjJIj .j.v.LJt i_»jJLL1I jjy&JI l$i« *j&lJM jU*j 
iJLL-»bU Jj-ill oUi» 3-c.U> 4ij> ,>* ri (i 111 (Orders.prg) J^-UI 

. . i >ji- u ivJWiJb. *'jsj a iii 



XJUII £.b>. |»**-£ h - i - U 



\A< 



4-yjjU Jiil J*»Aa ^b^ 



JJj ^-li^JI a^Ijo ^i ^ *; JaJjll ^^fiH <-*L>j oULJI Uttt <_tLi £J 

: 3ULJI jjkJI ,>- jj^ ^li^Jlj .ifUi 

*************** MRoports.prg 

* Present report options for Master file 

* Called from Master menu , MMenu.prg 
USE Master INDEX Master 

* Set up loop for presenting menu 

Repchoice = 

DO WHILE Repchoice # 5 

CLEAR 

@ 2,1 SAY "Master Inventory Report Options" 

@ 2,60 SAY DTOC(T_Date) + " " + TIMEO 

@3,0 SAYUline 

? 

? 

TEXT 

1. Entire inventory 

2. Reorder report 

3. On Order report 

4. Purchase orders 

5. Return to master menu 

ENDTEXT 

@ 24,1 SAY "Enter choice(l-5)" ; 

GET Repchoice PICT "9" RANGE 1,5 
READ 

* - - If not choosing Purchase orders, ask about 

* — printer . 
CLEAR 

STORE " " TO YN, Printer 



\A\ 



a-+»j* M» jtiAa ffji^ 



IF Repchoice < 4 

@ 5,5 SAY "Send report to printer ?" GET YN PICT "!" 

READ 

CLEAR 

* Set up for printer. 

IF YN = "Y" 

Printer = "TO PRINT" 

ENDIF 
ENDIF(Repchoice < 4) 
DO CASE 

CASE Repchoice = 1 

REPORT FORM Allmast & Printer 
CASE Repchoice = 2 

REPORT FORM Reorders FOR (QTY + On_order) ; 

< = Reorder & Printer 
CASE Repchoice = 3 * 

REPORT FORM Onorder FOR On_order > & Printer 
CASE Repchoice = 4 

DO Orders 
ENDCASE 

* IF report not going to printer and not 

* exiting program , pause . 

IF YN # "Y" .AND. Repchoice # 5 
? 
? 

WATT "Press any key to return to the reports menu" 
ENDIF 
ENDDO (Repchoice # 5) 
RETURN 



>AY 



a-*!.* MO J,j*Aa g-bj< 



, rj 4J}\ «_AL.j ( Master.dbf ) lS ~~*J\ «-*UI £ii pi p3 .*jUjuu.L ^jJu 
j~! c/J' ajjI^JI UUil ^j>So liUi jju ^ .( Master.ndx ) ju ^UJI 

^JLJI g^i Ifi- r JL»oJll jLju ^1 oljUS^II i*il3 ,^>* l^U ,>- 

: 3JUI j^k-JI ^ <j»JI II* Oj&jj v^^l 

USE Master INDEX Master 

Repchoice = 

DO WHILE Repchoice # 5 

CLEAR 

@ 2,1 SAY "Master Inventory Report Options" 

@ 2,60 SAY DTOC(TJ5ate) + " " + TIMEO 

@ 3,0 SAY Uline 

? 

? 

TEXT 

1. Entire inventory 

2. Reorder report 

3. On Order report 

4. Purchase orders 

5. Return to master menu 
ENDTEXT 

@ 24, 1 SAY "Enter choice(l-5)" ; 

GET Repchoice PICT "9" RANGE 1,5 
READ 

^li^JI J_JLi3 Jl j^ ajU ( 4 ) ^j jLwS^I L.I .7^iiA\ oU-JI 
Ji: ,>dl oLu»Sl obU r ai*iJll J* ^yu g^li^JI ti*j .( Orders.prg ) 
P> .i_ii-» Ji" ^ ij^JJall 3L«£JI jLa»j aj ^jj, ( Reorder ) yJikll a*. £* 

.Lfl .IjjJI ^.Iji ULLj 5-bjJI f >L 



NAf 



anHj» M» j^Aia %**„ 



( Printer ) j ( YN ) iJ\JJ\ ol^Jtu .Li:L Lu, ^Ul .^Ij 
t> jir^ 1 **M» +ui oli" li} f J^wJ[l Jl>. ^ .{ n ■ ) i^jui u^Ui*jj 

**M*i r-^ t^^ 1 < Orders.prg ) ^^ J! gys- ( 4 ) jUSVI jV dJij 

.( Purchase orders ) « I^UI ^.Iji 

( IF ) a* ^jl\ ±^\ lj ( Y ) jL^VI fA icA\ jl^w Ujutj 
.( Printer ) ^1 <p ( TO PRINT ) ijLJI ^ Jj L» ^ iii3 .jjba, 

CLEAR 

STORE " " TO YN, Printer 

IF Repchoice < 4 

@ 5,5 SAY "Send report to printer ?" ; 
GET YN PICT"!" 

READ 

CLEAR 

* Set up for printer. 

IF YN = "Y" 

Printer = "TO PRINT" 
ENDIF 
ENDIF(Repchoice < 4) 

^ L&xJ Ja**iL(j ,dj\jj[ j~- ^JJI ( Allmast ) j>J^\ ctn& ^ ( 1 ) pV 
^j *j U>II LwjJL, ( Printer ) ^iill &£■ j^^U ( & ) j>UI iJla 

: ^tf g^ ^1 ol tfl •( "TO PRINT" ) 

REPORT FORM Almast TO PRINT 

.,3>IU «ij>jll cJL-sftl oliU L*JjI- ji^tJI icLU J[ ji}i Li*j 



3ai*j>]| Jill Jj i wAn ^*bjj 



^JJI ( Reorders ) j^^Jl oi>^ ri ( 2 ) fV f J^~U j 1 ^ I-xla, 

( Onorders ) ^jiill ls\J? ^jj ( 3 ) ^>J\ (.J^i-il jUJu L.jllcj 

Jirt ,>* liUij -kli ydUl wow oL^ L^l« jl>jj i j^\ oLwoU I, ; ,;1L 

.( Onorder >0 ) J^iJI f L£iJ 

j^cJI ^ JO. iLLJI &XJ\ oljl~S?l J> ( & ) j/UI JUIa f ljLJc-lj 
iljl lili ,*jScl*A\ jUx>l *_*-»> i-iLiJI J_c *j»j£. jl jjj-tJI I-f-LJr» ^ 
^ Iji*j .( YN ) j-idl ^ ( Y ) o>*JI >ju *ili jj^tJI tfli f jiiaJll 
.j-^l j-. L* ( printer ) j-idl ^ ( "TO PRINT" ) ^LJI JUol Jl 
^1 jlju ( TO PRINT ) ->J~* JL^al Jl ^j_, JUJL, lj_*, 
.^1 i*L> Jl ^ L- ( REPORT FORM ) 

*jli a-Lr-LJ* jjj Jaii JLiLiJI Jje. ^j^ixJI ^j-c »JJC-Jll ilji lil Lol 
Ji^Jjl jfcwtff JUL, .( YN ) jJdll ^ ( Y ) j,i. tsJA i*-3 ^1 >ju 
^1 iiU.} f jix. Jl tjiij IJu-j .LJU ( printer ) j-*dl J-ky ( IF ) juu 
Ju* LiLUI J* a^*, ^ JUL, ( REPORT FORM ) jJl\ juy SjL* 

g-L^JI Jl gjij g-olljJI jLi ( 4 ) jL^VI ,JL^Jil jliiu L«jL^frj 

.juo U-J *^-lj4 pi;-. ^jJI (Orders) ^/Lll 

: iJLJI jjJLJI ^-0 Oj&o *>j^ j~« ^JJI liJUl .j^Jlj 

DO CASE 

CASE Repchoice = 1 

REPORT FORM Allmast & Printer 
CASE Repchoice = 2 

REPORT FORM Reorders FOR (QTY + Onorder) ; 
< = Reorder & Printer 



\Ao 



9-^»J» -UU JrfAAa &Hi M 



CASE Repchoice = 3 

REPORT FORM Onorder FOR On_order > ; 
& Printer 
CASE Repchoice = 4 
DO Orders 
ENDCASE 

.^jjliJI ,>- >•! Lcjj jUJw ,_^> tfJ>-\ tjj» jjjllJI JLot3 Jl fy*JS ^jsJut 

Jl »ij-»Jlj jJjUJI g-objj ^-. £j>AJ ( 5 ) (JjJI jLxio jl *>l*JI ^-a- 

.( MMenu.prg ) lJ ~~iJ\ .Jill J-i^s ^bjJ I~-^j"I S-iUJI 

c lj-SJl j-ljl g-b* v - i - U 

jjjliJI g-»lj^ jp ( Purchase Orders ) J^iJI ^Iji I*U» ji j>j*l 
I!*, .( orders.prg ) .I^JJI ^\J\ £-»L>j Jl £>£» ( MReports.prg ) 

lS ^>J\ tjUl J^L> vl^tjj jl y^»u 3jLUI ,y _^3 t_iiUs-j Ufr &'yi £*kjj\ 

JL-&II C**j -oli dUi JLi^Jj -U?^ y«»« J^y <->Li-»^l ,>* ( Master.dbf ) 
ojUy ( On order ) v*^ 1 ,;: * ;, « ;i *— ^' J-* 1 ( On hand ) ^Ui o>>j4l 
a*, o-* iM; ^*--* U** J"!«i 'j- 8 J^ t**j •( Reorder ) iJikll ,l>w £j~?1I 

JUu; .i_«,UtfJI 11a j-a Lftjlj-- t-JjlUI i-*SUl J-C *JL»OJM JL-J Ajjj l_JLkll 

^j .J>LJI ^Ijl gJv-^li Ujl^i ^jJLtll .JLl^I JT JUil .y. cU-VI 
«-*^l tP ( On_order ) J£«JI ^ •*j>jil i— ^" ^-J^^t f>^ ^j^' u*** 5 
^ ijLl-» JiU JL-jJL JJuJI UL* J^. »jul»JI I— £11 j-»u JJij ,^-^1 

: y^lT j^j ^j (PSEUDOCODE) 

.iiLJl ^—o j^j - \ 



a-HUjll JAM JrfiAa gJb^ 



.( Master.dbf ) ^Jl ^iUI J^U- iyljSo MU .^^ ^ - r 
cJUl c^j X— 5UI £- ( onhand ) *JL*ill X-*SUI £^**wo jUSl ^ - i 
^ dc-e j£J ;...■: lb dUij -vJiJI j*« £>»»*ll *Jj<i.j ( Onorder ) 

.(Master.dbf) lJ ^>J\ «-Ull oti-»J 

.LiLiJI vmi |t^j ~ 

.*JJ> cx>y jlll oL-aJI lib- ObLu ^v* (**i ~ "^ 
■^^11 U* j- IfjU. tjijIUI *-&• Cf* f J^C~JI Jl>- pi - V 

L^JLt v*w ^Jl *«£JI JJUj ^ ill ( New_order ) Ji*JI <iuj*3 ri - A 
>T gyb Ji^ ^ JUI ( Orderdate ) JUI vXjJW dUiTj vJjl-JI ,>. 

.ujU-oJI |jfl yit» 

.iiisJi ^j. ^ i<JJ» w-u „sii j^i J* ju.il julc - ^ 

.Zj^UJI oL-ffbU ( Temporary File ) cij* <JL> « bul ^ - 

y-^jJI ^jlJULI ^j ( On_order ) yJiill cu-o J-*> «i-jL*3 ^ - 

.(Master.dbf) 

.jLai\ Jl (Neworder) j£. obp*-. »*UI ^u - 

.Jiii i^JLLlI iJL^SlI cibU J* ^ji~ ^JJI c3ji\ till I j^i j^j - 

^.....JtI idJij ( Vendor ) ^5UI Jiv Jx. « Lj uiiil II* I— ^ ^ - 

.,>yoUJ :l— Jb <jLJSri 

.jgI^lcj jjUI *- <l ic-U? *^ - 

i_jL-o*3ll J-a J^> J£J »jJ— J i.i:.nll *— ilj JUjiUll i-*SUl JLfrLJ? *Jj - 

.uUI to* fr* Ujl^i *^j ^ill 
LT .JWI LL«i J£JI yuJI UL> fi ^Ul IJL* ^ .Lp^l jllc - 

.ajIjI^j oLl^^II tA* J ZjjUall jl£il Mil icLt *Ij 
jui> gib Jl Jltnil dUtfj LullJI J* ;jbjb. i*JL, Jl Jbfcrtl ^ - 

.c3jll .Jill yi (Vendor) 
.cJjll kjtlll Js ^j*iUI a—j»J L^j.lb LJLjJI tJL* _,-• -~ - 
•jtjjUsIl %A>j> Jl iajJIj ZjuUJI ,JUj ^ .Ljsfifl 



^•bjJI iLf a - t - 

jaIJ Vc* ^_ £*\jj} ( PSEUDOCODE ) JJjVl ol>AJI. X.LS' juo 

NAV 



3"HS-»jll -AUI J*iS3 ^Jli^ 



*JUI j^kJI ^i ^^Jba ^ ^u^JI 



*************** Orders nre 

* Create Purchase orders for reordering 

* Called from Reports menu, MReports.prg 
CLEAR 

USE Master INDEX Master 

* - -Make the loop,and display goods below reorder 

* - -point,and ask the user how many of each to order. 
GO TOP 

DO WHILE .NOT. EOF() 

* - Find out if onhand plus onorder quantity is 

* - - less than reorder point . 

IF (Qty + Onorder) < = Reorder 
CLEAR 

* Show status of item to be reordered 

@ 5,5 SAY "Part number: " + Part_no +" "+ Pname 

@ 6,5 SAY "On hand " + STR(Qty,4) 

@ 7,5 SAY "On order " + STR(On_order,4) 

@ 8,5 SAY "Reorder " + STR(Reorder,3) 

@ 9,5 SAY "Unit Cost" + STR(Cost,9,2) 

* Ask user how many to order 

@ 12,5 SAY "Order how many?" GET New_order ; 

PICT ,, 999" 
REPLACE Orderdate WITH TDate 
READ 
ENDIF 
SKIP 
ENDDO(Continue loop untill end of file) 

* When all orders have been placed 

VAA 



jUjHjJI -U4I J*«i3 &to*i 



* — Make a temporary file of items to be ordered. 
CLEAR 

? "Preparing Files please wait" 

7 

? "(Prepare printer while waiting)" 
COPY TO Temp FOR Neworder > 

* - -Update On_order field in Master file with new 

* - -orders,then set the Neworder field back to zero. 
REPLACE ALL On_order WITH Onorder + Neworder 
REPLACE ALL New_order WITH 

* Use temp file (which contains new orders) 

* Indexed by vendor 

USE Temp 

INDEX ON UPPER(Vendor) TO Temp 

* pjies ready , inform user 

CLEAR 

? CHR(7) 

WAIT "Ready printer and press any key to print orders" 

SET PRINT ON 

GO TOP 

* Loop through Temp file 

DO WHILE .NOT. EOF() 

* For each vendor , print name and address 
Thisloop = Vendor 
Mtotal = 
? vendor 
? Vendor add 



^A^ 



a-ri-kjll jlui Jaiia tAi+j 



? 
9 

? "Please send us the following items...." 

* - -For each item to be ordered from this vendor 

* - -print quantity.item , and price . 

DO WHILE Vendor = thisjoop .AND. .NOT. EOF() 
? Neworder , Pname , Cost , Neworder * Cost 
Mtotal = Neworder * Cost + Mtotal 
SKIP 

ENDDO 

* When done with this vendor, print total 

* Cost,and shipping name and address . 

? 

? "Total cost : ", Mtotal 
? 

? "Mail to : My company" 

? " 12 - Tayaran street" 

EJECT 
ENDDO(Continue for each vendor in Temp file) 

* when done, turn off printer , and return to 

* Reports menu . 

SET PRINT OFF 
RETURN 

: SJUI j>-JI J^ ^ dJij .^ ^UJI ,^^1 OUj (Master.dbf) 

CLEAR 

USE Master INDEX Master 



VV 



j^jH M» Jrfiia &b*t 



( Loop ) I^l^So XiU .UJl *SK- &> fJ £-1^' 0-* u^ 1 -J^'j 
^^u. J*. ^1 oU-»Vl ,>& ( Master.dbf ) tr --i J JI OAII J5U c^kJJ 

: 3JLJI jjkJI Jfc- ,>• uUS ^ ,,JU-»Vl ki* ,>- oti-» JS" ,>• Lp^ 

GO TOP 

DO WHILE .NOT. EOF() 

* — Find out if onjiand plus onorder 

* quantity is less than reorder point 

IF (Qty + On_order) < = Reorder 
CLEAR 

* - - - Show status of item to be reordered 

@ 5,5 SAY "Part number:" + Partjio + " "+ P_name 

@ 6,5 SAY "On hand " + STR(Qty,4) 

@ 7,5 SAY "On order " + STR(On_order,4) 

@ 8,5 SAY "Reorder " + STR(Reorder,3) 

@ 9,5 SAY "Unit Cost" + STR(Cost,9,2) 

* Ask user how many to order 

@ 12,5 SAY "Order how many?" ; 

GET New_order PICT "999" 
REPLACE Orderdate WITH T_Date 
READ 
ENDIF 
SKIP 
ENDDO(Continue loop untill end of file) 

£jj\i, t^ja |^ij ( Order_date ) *JU*J' Ci>^ Ji> jl Li" .( New_order ) 



tf-HM.>ll Mil J^M&a ^.b^ 



.JL-^I obL, £-*». j-j J^U ^ ^ £*bjj\ ^ *iJLJI .^lj 

.( temp ) ^^^ ( Temporary File ) cJ>. ,oU ^ \,J&\ 

: LJUI jjkJI J^l> ^ dJi ^ 

CLEAR 

? "Preparing Files please wait" 

? 

? "(Prepare printer while waiting)" 
COPY TO Temp FOR Neworder > 

( Master.dbf ) Lr ^,J\ Ulll obU J^juc *£Ai ^ ^ ^yi .^Jlj 

*3 j^xJI Ijlu»JI i— £11 XiLi»lj ( On_order ) i-lkll c*c; JL»£JI Ji> oLU 
( New_order ) ;jujl«JI JLJUl JJi> »*UJ ^ ^3 .liUI i-SJl Jl lfJJ» 

: 2JLJI jjkJI JiU- ,>• JJi ^ .jLal\ Jl 

* - -Update On_order field in Master file with new 

* - -orders, then set the Neworder field back to zero. 
REPLACE ALL Onorder WITH Onorder + New_order 
REPLACE ALL New_order WITH 

*i«^i ^ L^( Temp ) c3jil .Jill jp *N> &» ^j ,^-UJI «j>JIj 
JiL ^Wl JyLJI iJU> i*Lt ^ l*^ ^j ( Vendor) ^Ul Jji> J* 

: zjui j>-Ji jju ^ aii ^ .tto. jt ^L 

USE Temp 

INDEX ON UPPER(Vendor) TO Temp 

<> ( Vendor) ^L JXJ J^-UI 'ylJ-ieLU ijjI^Sb UU ;L£ilj Z*ADI 



pu+ijll Jlil J<iAa &*** 



J& L^UJI J^l i*LW IfAib ^>i ~^j£i iiU .Lul ^ Li" .»a> 

CLEAR 

? CHR(7) 

WAIT "Ready printer and press any key to print orders" 

SET PRINT ON 

GO TOP 

* Loop through Temp file 

DO WHILE .NOT. EOF() 

^ r *l\ uUJ ( Mtotal ) »>IJJI j-jll. .Liil ^ IS .( Thisjoop ) 



Thisjoop = Vendor 
Mtotal = 
? vendor 
? Vendor add 



? "Please send us the following items...." 

jjull ,y ju—I ^jjitf ^ ^JL J£J Z-— JL lUJi, »j> Jx ( Vendor ) ^JL 

: Z2UJI u* ^y SJUI jjkJIj .( Thisjoop ) 

DO WHILE Vendor = thisjoop .AND. .NOT. EOF0 
? Neworder ,P_name , Cost , Neworder * Cost 
Mtotal = Neworder * Cost + Mtotal 
SKIP 

ENDDO 



\\r 



a-sHjil -iW J*«ia ^^ 



iftUr pi X.J, ^L p-,1 Jl JlEiVI J^ cS' 0**- C^i 0- « W J^J 
JUjI ^ ^ill uU^L» yJWI IV 5-WI iil&JI **Lt pi UT ..I^JI jj 

.( Eject ) XtUJI ajj Js; pi pj .*J| oU-,Vl 

: SJLjJI »I* j^»j5 3JLJI jjLJIj 

? "Total cost : ", Mtotal 
? 

? "Mail to : My company" 
? " 12 - Tayaran street" 
EJECT 

.J^iJI ^.Ij? JiL, UU> pi </» L>jUJI *j,l^sll UUII ^j fi 
g-ls^JI Jl •ijjJIj ( Off ) J-^l Lf^j J LuUJI iiUI ^ aUi juo 
: SJUI jjkJI Jfc> ^ viUij (Master.dbf) ^Jl 

ENDDO(Continue for each vendor in Temp file) 

SET PRINT OFF 

RETURN 

u^Jjll JUil J-Axi g.by. - \i 

uis ^ ( 3 ) fij\ jLs>\ &> ch* c^i ^" J^> e-^ J! W ri 

JjjVl oljJwJIj .( MEditprg ) g-lijJI Juia pi £-> ^Jl .Jill J-Ais ^li^ 

: jfifc o& fM 'V ( PSEUDOCODE ) 

•ju ^UJI ^jfUl .JUj (Master.dbf) ^-Jjl -OUI £i pi - V 

.JjJUlJI «l>>^ *i,lj^3 3il> &£j pi - V 

.obLj Jjjlo ijjULII ( Part number ) .;*JI p3> ,>* «i^JI - V 1 

.UiUJI Jl gjfjll pi ( Part number ) . j*JI p3> JU-aj f ji* x* - i 

JUtfl S-4L4 f ljLki-L ajULu ^^ pi v^ 1 «>p ji J-* J-t^ 1 ■"* " ° 

.( IScreenl ) 



\\l 



a-rf-M -Wl JifAAa g-Uj* 



Jl>jV l~*jii\ »jUuilj ^JtiuLjl j^l-ui ^ i^jJJall .j#JI Jx jjiJI ^ 1 lil - "\ 

. EJ >ji f oioJii ok. ^ j-j*ji j ji>L-yi - v 



^15" oLS" ^ 3J/N ol>*JI J* &*u ^jj| ^L^JIj 



****************************** jyfg^jt pre 

* Edit the inventory Master file 

* Called from Master menu , MMenu.prg . 
USE Master INDEX Master 

* Start loop for performing edits 

Partnumb = "X" 

DO WHILE Partnumb # " " 

* — Find out what part number to edit. 

CLEAR 

@ 2,1 SAY "Edit Inventory Master File" 

@ 2,60 SAY DTOCT(T_Date) + " " + TIMEO 

@3,0 SAYUline 

? 

? 

? 

? 

Partnumb = SPACE(5) 

@ 15,5 SAY "Edit for what part number?" ; 

GET Partnumb 
READ 

* Try to find that part number 

Partnumb = UPPER(Partnumb) 
SEEK Partnumb 



^o 



a-*Jjll -UM J*AAa #i3„ 



DO CASE 

* If no part number entered, return to 

* — Master menu. 
CASE Partnumb = " " 
CLEAR 

* If part number found , edit using 

* Iscreenl format file 

CASE FOUNDO 

SET FORMAT TO Iscreenl 

READ 

SET FORMAT TO 

* Otherwise warn user, and allow another try 

CASE .NOT. FOUNDO 

@ 17,5 SAY ^There is no part" + "Partnumb" 
@ 24,5 SAY "Press any key to try again" 
WAIT 
ENDCASE 
ENDDO(Continue editing untill user requests ...exit) 

* Return to Master menu 

RETURN 

*Sj »i\jJ\£j .*j ^oUJI ^j^iii (_iL>j ( _ r 4^ r il will I fCJ ~J *j .AiLfcJCL mjAj ^JJI 

<y .-G.7m.II *1>jl. ^JJI ( Part number ) c_>»JI |Jj ^c >^*JJ Ijj\^j *J&> &J& 

: LJUI jjii-JI JiU ,>- dUi ^ ( Partnumb ) ^-iill 

USE Master INDEX Master 

Partnumb = "X" 

DO WHILE Partnumb #" " 



NAn 



3-rfJj" juji j,^ ^jb* 



.^ijilAi {3j}\ &s. f jAi-il Jl>- ^ cJjJIj pjUlj JLiLJI jljjL* ^^ pi, fj 

: SJLJI jjJLJI J*. ^. dJij 

CLEAR 

@2,1 SAY "Edit Inventory Master File" 

@ 2,60 SAY DTOCT(T_Date) + * " + TIMEO 

@3,0 SAYUline 

? 

? 

Partnumb = SPACE(5) 

@ 15,5 SAY "Edit for what part number?" GET Partnumb 

READ 

jJi\ ZkJjj *jl* £*Jl> ( Uppercase ) ij^S *Jjj> J[ . j»JI ^5j Jjy*3 ^j |*3 

: ^rttf diij .( SEEK ) 

Partnumb = UPPER(Partnumb) 
SEEK Partnumb 

J* jjiJI ^j U5j Ji-il lil L»I . C ^~5 V JI uilll J.j.i.^J iu-^ll i* 51 ^ 1 Ji %j*JI J{ 
JU^I iili JAi ,>- .j*JI li* obL, ^^u g-b^JI ojj ( FOUNDO ) ^1 IJL» 
pb ^> ..>«JI li* obL- Jjjlo f jLicL«JJ j^l; pj UjLi;l $~. ^\ ( IScreenl ) 

.(IScreenl ) Jl>i?l iili vjL. j^Lil 

•>l |*5j Jl>i"y i^>jiJI *J»«jj »Jk»il_il 



\\v 



a-^JumjaiAa^Ji,, 



DO CASE 

CASE Partnumb = " " 
CLEAR 
CASEFOUNDO 

SET FORMAT TO Iscreenl 
READ 

SET FORMAT TO 
CASE .NOT. FORUNDO 

@ 17,5 SAY "There is no part " + Partnumb 
@ 24,5 SAY "Press any key to try again" 
WAIT 
ENDCASE 

ENDDO(Continue editing untill user requests exit) 
RETURN 



m 



aU^IIJJLi J&k&a &bjt 



jAl ijuilsll J±aUI 



r m 



e*Ujd 



\s\ 



aU^kJI Mm Jj»« < n £*b.rj 



Olnj.11 tiLt *ioJ~j «jL-=>Vl olw ***l^ \j eC ^i UJ^' 2^^Ji 0-* *./»*■" I** 

U^ H<3J.;.« p-«ljj *jujI j-« i)j£~* p-"^ Jir^ lT^ ^^ (^*iJ •*^'* J- 6 »^i 



.-> ( Point of Sale ) £~JI SLc J-c <JljJ/)IU ^l^JI li* fJ iy .jku Lj ^UbVI 
*3j J>il lil .jjiJuJI jjJ^w ualj^JI *>!» L5* .LIT JjjjLUI ,^3 oLtfil ^IjLj «J-j 

( SMenu.prg )g»\iji ,y>j .^L-iti^l j*-* Li" ^1^ 3jo,I ^ g~*ljjJI U* dj&a 
Ua£, ^> f£*cj jill ( Pos.prg ) ^-oU^y J^l o">UJI g**UJI ,> ,J^» tflll 
.J3j-« ^vi»jj ^xJI jjjUzJI ^Jjj ^JJI ( Salreps.prg ) g-olj^j ( Point of sale ) £-JI 
.oU~JI v_iL> oULj Jj-jucj *l— j ^JLtl ( Saledit.prg ) uU^jj oL^Vl oli,.,.« 

: JUI JSLiJI ^ j^j g^li^JU ^.^1 •-/jillj 



FromlMenu.prg 
SMenrnprg 

1- Add new sales 

2- Print reports 
3- Edit sales 



j: 



■PMH 



Posjjfg 



Point of sale ;T 
Date entry program 



?&dlreps^rg 

Print reports by 
Invoice or range of dates I 



31 



Saledit.prg 

Edit the sales 
transaction file 



I \ - \o ) JSLi 



^ ( Salreps ) j ( Pos ) j ( SMenu ) ^-1^ j>a ^ oj- JUI ,>»JI ^ij 

.oUUI vi-ji^ ^UJI J^oill Jl ( Saledit ) £»b* ^ J^>b 



Y»\ 



£*Urf*ll JUj Jj»Ai jubjj 



( Smenu.prg ) "*~~4J\ UUII ~b^ y - \o 

.LiLJI J* 3LJUI iuiUJI ^ g-al^JI JJLi3 jclcj .ujUJI f lkJ *;--J^I 






^Salesr System Menu 02/20&0 04rS0.~30 



IVW^U KmHIMtNTH*' 



1 . Biter point of sale routine 

2 . Print sales reports 

3 . Edit sales data 

4 . Return to main menu 



Enter choice (1—4 ) 



( Y - \o ) J5Li 
^ Jwi ^^j « *J ( PSEUDOCODE ) *Jjl\ ol>^JI UX J| ^l» ^U* 

************************** SMenu.prg 

* Menu of sales portion of the inventroy system 

* Called from inventory system Main menu . 

* Set up loop for presenting menu 

Schoice = 

DO WHILE Schoice # 4 

CLEAR 

@ 2,1 SAY "Sales system menu" 

@ 2,60 SAY DTOC(T_Date) + " " + TIMEQ 



T-Y 



aLhhII Mm JrfiAS ^Aiyf 



©3,0 SAYUline 

? 

? 

TEXT 

1. Enter point of sale routine 

2. Print sales reports 

3. Edit sales data 

4. Return to main menu 

ENDTEXT 

@ 24,1 SAY "Enter choice (1 - 4) " GET Schoice PICT "9" 

READ 

* Branch to appropriate choices 

DO CASE 

CASE Schoice = 1 

DOPos 
CASE Schoice = 2 
DO Salreps 
CASE Schoice = 3 
DOSaledit 
ENDCASE 
ENDDO(While schoice #4) 

* when done , return to main menu 

RETURN 

(Pos.prg) £*!l aLaj g.bjj r - No 

.u* LftLiJI Jx jtk, L. ^ Vji ^ g-l^JI lift ^\J Lj *. J, .jj| Jj 
iiLi ^ ^J\ J^juiJ jllo -£-.^1 li* dd&J l. v u.„ .^LaJI o^ „&. .Juta 

.( f - \0 ) JSLUI ,>* ^^ L5* L.U ^jJI Jjjsli ju^j 



Y-.f 



AUrffll Ola JjiAn £jbjJ 



02/20/90 
Clerk 



Invoice number ' 



Customer - 



Part # Name 



Qty Price Total 



( r - \o ) jsls 

^j ,jjj\ J—jJI j—lj ( Clerk )^JI aJLwiu ^jUJI v^Lt^II ^1 LiLSL ..jl^JLI -ji 

.( t - \« ) 



02/20/90 


Invoice number : 


clerk wmmaamm 


Part # Name 

BnlllfliluHwliBIunitnuHiHufl- 


Qty Price Total 



( i - No ) J£i 



JUI jji^lJI ^k; ij^ ^ •> fSj) f 0iO-JI JUil Olftj 



No such part ! ! 



Y-i 



juUrfxJI -1U JrfiAa £jbj* 



i>»j-« *J?> *3j JoUS* JLLfj .JLyli "tjM JjUu jl ZJLxJI »1* ^j ..l-*T.„ .11 ,>£-jj 

i~£JI JUiV ( Highlights ) 3-J^» IjuJ ^Ju LT UT ^ .>JI li* pj Jj 
&z JSJI ^uJI kjL-^u g-'bfJI pji Li* .( Selling Price ) £-JI jju-, ( Qty ) 
^UJI J>yiA\ ij—JI ^ f ( Price ) ^Jl yu. ,y ( Qty ) i-JUl uj^ j^ 

j^JSLill ^» JLJLJI »i* ?v£5j .JU1> *5j JU-ib .JLibUdl .jJU ,_^> JUI »J*JI -Jy 



02&0/90 
Cferk 



Invoice number - 



Customer ," 



i#i;iiiiiiilSJuaia;iiiiiii^ 



Shoe 



( - \A ) JSLft 



02/20/90 

Clerk BMMBB— i 


Invoice number r 


iJJBinijJiii^ 


"^^^^SM^^^^^^M 


ii:EVEn;; :: |fSf|fi!|i||BI 


Hi : : EHHI ! • iEH^HHF EEOHI ! 







_ ( -\ - \0 ) 

J&UI ,>- «*U* £-*=i> ' U i LJI ^^ ^ V^ jH**i-ll .fjii 'uL-JI IJl<J ^i-Jlj 



Y-« 



AUrfill JJ* J*i&a ^b>i 



JUI 



02S20/90 In voice number . 

L^ierK. mmmmmmmmmm t^asrcfjiier . 



l#iiilillJlBi£ireeJllill;i;lll£^ 



A-121 
A-122 



Shoe 
Shirt 




( V - \o )-jCi 

J gr,fr7_. IJUbj ) »JUjj tfJJI «j»JI ^ JUSUj lij»j-» L3j fJiw-ll JiX; L.A1*, 

( <- ) j-Ui- J*. iuLiJI 3JUJI »i* ^ aj£~j ( Ul ^ ^JLII .j*JI f-l o- 
^liLo Jj. Jai-JI j^ LS" .>T «> ,Jj ajL^j .>JI fjj jl£* Jl %j>Ji o-3j-» 
JUol OjS Jlio"Vl j-llL. Ja iuLail jl £~> .3uA~JI 2uL*JI ^ JuiuJ j-^ JlS-rtl 

js* o?Ji ii«. of e-^ 1 ^~ ( pri ce ) ^*-Ji «y ji ( Qty ) *^J' i> u* i*' 

J* Jai-iu -ott ( Invoice ) Tij^UJI J* oULj JUol ,>- f Jiii~ll t^j L-alcj 
.( Part # ). jiJI fSjj u*UJI J>iJI 4>-JI J* U3!j jA^I jj^ u -^ J^ 3 ? 1 C 1 ^ 

( A - \0 ) JSLiJI ^ 11* ^aoj-.y fl.ijpUil «Jub i*U» Jirf jlf lij *J'j — ' 

E-b*)! f ji, ^ ( Invoice ) Sj^UJI .A* «Lt ^ ( Y ) jjis-ll «-^ Uji *J 
^ v L>i lili l5 >I h^ **^ ^ o^ 'M r -»^— U J'J~ u*j*j S^ 1 e~< 
«£• ( N ) X «-»l>I lilj .Jlu> »jjjIj ,o>j **iM\ o^i Iw* !jtpl* 0*0* ri ( Y ) 



Y-1 



.nlarfjil Mm J**&9 fr^X 



02&0/90 



Clerk 



Invoice number .- 



Customer - 



m 



A 121 

A-122 



•CianilBill 



Shoe 
Shirt 



Pi!iHt;:jtH!^i!^;i?;:!G^K5 




ll l * M tl * fcW**M > fcfc****^^ 



( A - \0 ) J&i 

(PSEUDOCODE) ajj^l oljLiJI *>\=S \ - r - No 
J ZJj^l olji^JI ^Ltf pi, .( Pos.prg ) *i~-j ^ ( Point of sale ) 



.( Sales.dbf ) oU^JU ,_«L ,>- s^li ^ >T Jt Jj^JI ^ 
•t^ 1 **> **i^ ( Temporary File ) cJ> JL. „Lij| ^ 

u^y 1 Vji (^i *V iiLiJi J-* j^i>ji ^^j. lyi^sb ziU .^j^o ^ 

.J^-UII J| *Jl>*j ^ «j» J£J i^ aU j^o pi 

.( Master.dbf ) ^^--ijl 



- ^ 

- T 

- r 

- i 

- 

- "\ 

- V 

- A 



Y-V 



juU^I Ma J-iAa &**„ 



.-UA> jtJj Jl>i7 j.O»«i-JI jjOtpO jt^J *>>j-« .^j* (iJj Jl>iJ JUL* - \ 

..> JSJ ^ujlj JuXll JU-il ^ -\ • 

. JbJb. (Jj JU-il ^ ( jiu> ) "juJ JUil xj. - \ \ 

.(Total ) jlj^JI coo ^jtj oL-JJ JSJI yuJI vl~> ri -^ 

.( Temporary File ) c3>« «JL« ^ *S>JI u* ,^iu ^ -\r 

.JUI <JiwiJI obLo ^yJ jk~J.I Jj j>Ijlc 0L3 j^j -M. 

( Scrolling ) iiUJI I»>j ^ iiLiJI ^i Ja- >T Jl Jj-^l jclc ->o 

Jl>i[ j-c- •j£ix~il uuji; ^^0. ijjljSliil juL>ji juiw ^ jij*i-,vi *^ -\*\ 

»jj_jLiLI JJUI j-x-JI ^^r* i^ii UUJI »I_* ^Jj .OLw*5fl 
ju^j j,LS" lil l-x. ^jiki-JLI Jlj— ^js. pSj {$ ( Grand Total ) 

dUi Jx. .Ljj ^^>l »jjj!j Slt-LJ* jlj^j jLS" lil ^jltwlJI Jlj-» ^Sj -W 

.rj>JI »j£o-JI ULk» ^ SjjIj^iFI Sil»JI _^«J 

^^ ^ LT ( Database Files ) obLJI jLdp oUL. j^UI ^ -\A 

.( Sales File ) oU-II Jl. 

.( Temporary File ) c3jll «JUI £--. ^ -\^ 

.oU,,,.il y^Jl a^sisJl Jl ^#J\ ^ -v- 



E-M 



A£ r - r - \o 



g-oUrf £* i>>jll g^jJI ^ >T OLJlS" i*JL»- £-.Urf Jl ^li~ L-JJ 

dJJJj .oL^*All jjL. Ji" U*^- ^Ltf iJU ^ dUij ( DBase III + ) 
J^\ ^A\ f Ij^lJ f3 lil g-b^JI J** oU^-Ail jA- ^ f A£ J-^ 
ji^jdJ L* oU^"*!! jjk- CL-ii- j&j •( DBase III+ ) £-b* ^l^JI 



Ua*> 



^ £_ ^ o3Ull f l^J i^UJI £-1^11 £-> ,>- '"^V 1 -^ 



Y-A 



.aUjill JU J#i&3 ^Aiyi 






************** Pos.prg 

* Point of sale data entry program for sales 

* Called from Sales menu , SMenu.prg 

* - Get last-used invoice number from the Sales file. 
USE Sales 

GOBOTT 

Minvoice = Invoice_no 

* Add new transactions to a temporary file 

SET SAFETY OFF 

COPY STRUCTURE TO Tempinv 

* Open Master and temporary files 

SELECT A 

USE Master INDEX Master 

SELECT B 

USE Tempinv 

SET RELATION TO part_no INTO Master 

* Set pointer in temporary file 

StartTrans = 1 

* Set up loop for displaying invoice forms 

Again = "Y" 

DO WHILE Again = "Y" 

* - - Set up top portion of invoice on the screen 

CLEAR 

Minvoice = Minvoice + 1 

STORE SPACE (30) TO MClerk, MCust 



Y^ 



.aUaxll JL. J^ifta g^i^ 



Mtotal = 

@ 1,2 SAYT_Date 

@ 1,30 SAY "Invoice number:" + STR(Minvoice,5) 

@ 2,2 SAY "Clerk" GET MClerk 

@ 2,35 SAY "Customer:" GET MCust 

@ 3,0 SAY Uline 

? "PART » Name", SPACE(20) 

?? "Qty Price Total" 

READ 

* Set up loop for each item in the invoice 

Row = 7 

Adding = .T. 

DO WHILE Adding 

Partnumb = SPACE(5) 
ok = .F. 

* loop to check validity of part number 

DO WHILE .NOT. ok 

* Set up invoice memory variables. 

Quantity = 0.00 

SelJPrice = 0.00 

* Ask for part number. 

Partnumb = SPACE(5) 
. @ Row,2 GET Partnumb 

READ 

* Make sure Part number exixts. 

partnumb = UPPER(TRIM(Partnumb)) 

SELECT A 

SEEK Partnumb 



* Decide next step based on 

* existance of part number. 

DO CASE 



xAm*A\ Jit J^iin ^«bjf 



* No part number entered 

CASE LEN(partnumb) = 
ok = .T. 
Adding = .F. 

* Part number does not exist. 

CASE .NOT. FOUNDO 

@ Row, 10 SAY "No such part !!" 
oK = .F. 

* p ar t number exists 

CASE FOUNDO 

* Display Part name, get 

* quantity and price 

@ Row, 10 SAY Pname 

@ Row,35 GET Quantity PICT ; 

"999.99" 

@ Row,40 GET Sel_Price PICT ; 

"999.99" 

READ 

* If quantity is zero , loop 

* Else , Display total. 

IF Quantity = 

LOOP 
ESLE 

@ Row,50 SAY Quantity * ; 
Sel_Price PICT "##,###.##" 

Mtotal = Mtotal + Quantity * ; 
Sel_price 
ok = .T. 
ENDIF 

* Add a blank record to the 

* Tempinv file , and fill in 



JMU44JI M* Jrf&fta £ibjj 



* — the fields. 
SELECT B 
APPEND BLANK 
REPLACE Date WITH TDate 
REPLACE Clerk WITH M_Clerk 
REPLACE Invoicejio WITH Minvoice 
REPLACE Customer WITH MCust 
REPLACE Partjio WITH Partnumb 
REPLACE Qty WITH Quantity 
REPLACE Price WITH Sel_Price 
REPLACE Posted WITH .F. 
ENDCASE . 

ENDDO(continue loop for checking part number) 

Row = Row + 1 

* Scroll screen if reached end of screen. 

IF Row > = 19 
@24,1 
7 

Row = 19 
ENDIF 
ENDDO(while still adding items to invoice) 

* Display grand total.and pause before next 

_* invoice. 

@ Row+2,40 SAY "Total:" 

@ Row+2,50 SAY Mtotal VICTIM M#M" 

Pinvoice = "Y" 

@ 23,2 SAY "Print invoice ? (Y/N)" GET Pinvoice PICT "!" 

READ 

* Print invoice , Reset Start Trans. 

IF Pinvoice = "Y" 

SET PRINT ON 
? "Date:" , T Date 



Y\Y 



juUtfiil Mm J^iAl ^«ll jj 



? "Invoice number:" , STR(Minvoice,5) 
? "Customer:" , MCust , SAPACE(20) 
?? "Clerk:" , Mclerk 
? Uline 
? 

SELECT B 

GOTO StartTrans 

LIST OFF WHILE .NOT. EOFO Part_no, ; 

A -> Pname, Qty , Price, Qty * Price 

? 

? 

? "Total:" , SPACE(34), Mtotal 

EJECT 

SET PRINT OFF 

StartTrans = RECCOUNTO + 1 
ENDIF 
CLEAR 
@ 23,2 SAY "Do another transaction? (Y/N)" ; 

GET Again PICT"!" 
READ 
ENDDO(add invoices while user does not request exit) 

* Close databases and update sales file. 

CLOSE DATABASES 

CLEAR 

? "Updating transaction file , please wait ..." 

SET TALK ON 

USE SALES 

APPEND FROM Tempinv 

USETempinv 

ZAP 

USE Sales INDEX Sales 



v\r 



x-Urffil JU J*iAa ^jIj^ 



REINDEX 
SET TALK OFF 
CLOSE DATABASES 
RETURN 

Ou* ( Sales.dbf ) ol*JU ^JL» ^cj ^ ^ .^Uji-.b f l5 ^jJI ^-.l^JI p-,1 
( Invoice_no ) »jjs\j ,.3, >T Jx. J^^JJ dUi, .ajl. j-^ ^i f ljiiii-l 

j^k-JI JbU ,>* dLIi ^iy .( Minvoice ) ^Jd\ J> ^jj\ li* j^e 

: UtJI 

USE Sales 
GOBOTT 
Minvoice = Invoice_no 

jj}ic ^ ( Tempinv.dbf ) cJjII <Jil\ ^ L&lJ p&jj ^jLJI «j*JIj 
Ji^kM »Jui. ^ijjj ( Sales.dbf ) oLuJU <JL> Jl I4IX J-j Ijui^JI ^sljiJI 
•jjL Zj^llail ^IjJJI JUoJ ,><• .LfwVI juuj .^-obj— II 'kj:tI J^-i" I*j— 

j-o'VI .1.1.^ J U* -k>}ly .OlxJI ijJu Jl j-jIjjUI «i* 3JU»L g^aljjjl 

cjjll Olll ^ oLuJLI ^L. J*L* £~J -pi j*. ( SET SAFETY OFF ) 



SET SAFETY OFF 

COPY STRUCTURE TO Tempinv 

j!,Ll- ^ ^^1 cjUIIj CJjil Olll £S *Wi- ,>* f~! «SJUI .>Jlj 
.( Part number ) «j»JI ^j, Ji* Jj; .Uj ^-iUI J»jj ^ ^ .iikiw J-^ 

jm-I J* Jj-^-JI ,> isUi Jbo JLdLu o-iUI w -LJI ol LT .^Jl «-»UI 



m 



jbUtffll -UU J*i£a «ub,H 



.L^uj (Relation) 33*iUJI .Lulj 



SELECT A 

USE Master INDEX Master 

SELECT B 

USE Tempinv 

SET RELATION TO part_no INTO Master 

ijL-j ^ui j-»<-Ji ,iJj g-«iJjJi Ojm ji v**« j^ 3 '^' i*LJ» ajuij 
( 1 ) ^all »jUi*lj ( StartTrans ) »/IJJI jJs* .Lul ^ liUJJ .*^LL 

StartTrans = 1 

j^jIjjUI 1)Li')I *-i>'j-^J i^> Cfi*^ 3 *-W->- o-« («-^ t^Lr" 'J-t-IIj 
US' Z5UJI fci* ,y f&>£}\ ^ ( Again ) j-*dl ^ Ln=J p^, ( Invoices ) 
J| Jl&yyi XL*. j>l^ ( Minvoice ) ^*ill S--3 IjLj Ii)i»JI JiU ^ ^ 

ijujb. ijpli J£J (MCust) j-idlj (MClerk) ^1 «UjI ^ L* 

: LJUI jA-J' J^- ,>• ^J Ji^ ^i^ 1 jA-J' 

* Set up loop for displaying invoice forms 

Again = "Y" 

DO WHILE Again = "Y" 

* - - Set up top portion of invoice on the screen 

CLEAR 

Minvoice = Minvoice + 1 

STORE SPACE (30) TO Mclerk, MCust 

Mtotal = 

@ 1,2 SAY TDate 

@ 1,30 SAY "Invoice number:" + STR(Minvoice,5) 



•aUtffJI -*k JrfiAa #*** 



@ 2,2 SAY "Clerk" GET MClerk 

@ 2,35 SAY "Customer:" GET MCust 

@3,0 SAYUline 

? "PART # name", SPACE(20) 

?? "Qty Price Total" 

READ 

^^ fj-jj .ilUJI »JL* ^ (X-cU ( Adding ) j^Jcil . U;J ^ .ij^UH 

t ^> Lylj&JI iiUII >L-3j .iiUJI Jt ( 7 ) ,J, jkJI ^ Jjil oLl^^I 

.( Part number ) <>» ^j, JUjI ov J^?' ^1^ Jx. r o^Jll J**^, 

.aJLjJI aJm> £J»jj JJUI jjk^J\j 

Row = 7 

Adding = .T. 

DO WHILE Adding 

dUlfj ( Partnumb ) J^IUI j*juj» « Lul ju; liUij »jAi~il aI^jl. ^JUI 
IJla .Lkt[ ^ .Lyl^l iiUJI ^ jjUdJ ( ok ) .yikJU ^1 «LUl 
.JjVI J^ »JL>-lj Zj* Ajj\^ci\ iiUJI JLjLj *i» ^fjf ( .F. ) i*-iW j^li 

.ZJLjJI »JLft ft-3_jj iJUil jjf»...Hj 

Partnumb = SPACE(5) 

ok = .F. 

DO WHILE .NOT. ok 

&* JLcLil i~>£JI >i>^J ( Quantity ) «ji"IS ^^J^ *Ltil ^ L^" 
jjia-JI J5U j^> aJi, .uIl^JI Ijla ><- csj?cS (SelPrice) jJd\j <Jc^ai\ 

: ZJUI 



v>n 



j^U^il JO. JrfiAa %Aiji 



Quantity = 0.00 
Sel_Price = 0.00 

Cf ^j J *;..'«;* ilju-Vl &j>cl f+* L* Ju^ijJI J^hJi Huj f LiixJj 

Jl ^1 Li* J^w pi; ^ ( Partnumb ) .^1 J ^J\ li* &£c ^ 
.( SEEK ) y*i\ *k-ljj *it *^*JI f^i j& ( Uppercase ) .^-J" o,>>. 

Partnumb = SPACE(5) 

@ Row,2 GET Partnumb 

READ 

Partnumb = UPPER(TRIM(Partnumb)) 

SELECT A 

SEEK Partnumb 

^ f ji^JI J>JL; U Jfc .Li jl^JI iUwl ATii ,>-. ^ ,>.UI «J*Jlj 

JUil jji Jl>i"yi c^ J^ (.j^xJll ki.-a-j Loju*j .( Partnumb ) ^-idl 
^ ( .F. ) i-JUIj ( ok ) j-iill j> ( .T. ) i~*JI &£c ^ «y> ,Jj J 
ii »U*- dUi ji «i~» ajjI^SoJI iiUJI ^-» £j>JU iiUi> ( Adding ) j^d\ 

.LJLjJI (JL* Tt^jJ JLJlxJI jjja.ollj .rj^JJl Jbjrf .. I't i T „l l 

DO CASE 

CASE LEN(partnumb) = 
ok = .T. 
Adding = .F. 

>JLkZuJll jjj&>5 <»~> «_illl u* $j>j-n jJc t'j> *Jj Jl^il *Zj LaJULCj 

,y («F.) a-~aJI Oir^ lii^ 0^ '^ ^Li -^^ 'V 2Jj^»— U LoyUI tjlkcjj 
J*Ai- ^ liUi j^Xjj .JLyb «j-o Ajjlj5cdl ISbJI JLJLj *Sj ^s* (ok) j^ll 

: JJLJI jjkJI 



Y\Y 



-uUjtll JkU JrfAAa $JLtji 



CASE .NOT. FOUNDO 

@ Row, 10 SAY "No such part !!" 

oK = .F. 

2LJUI ,>* jU, pi ( Pname ) dc^\ ^1 Ji. Jc^\\ \x^ L-.UJI 

: ajui jjLji jit ,>» dJi ^ .^Lji yu.j u1l-ji u* ,>, Ljuai 

CASE FOUNDO ' 

* Display Part name, get 

* quantity and price 

@ Row, 10 SAY P_name 

@ Row,35 GET Quantity PICT "999.99" 

@ Row,40 GET Sel_Price PICT "999.99" 

READ 

olj&JI iJUJI JLjia «UI UJ «>hJI IJub J5U- ^ ^ L* .Ij^UU J5JI 
dUij ( >L» ) *~SUJ f \»t,„II JU 4 { SJU ^ (LOOP) ^.Sl f l.iia-L 

: XJUI jjkJI J^U. ^ dJi fi, .i-SUl ^UJI (Highlight) 

IF Quantity = 

LOOP 
ESLE 

@ Row,50 SAY Quantity * Sel_Price; 
PICT "##,###.##" 

Mtotal = Mtotal + Quantity * Sel_Price 

ok = .T. 
ENDIF 

Y-VA 



jAm^U Mm J*AA3 £Ai H 



J*» &* dJij .( Tempinv ) cJjil odll ^ 5JLUII JjJfcJI Jl Villi 

: JJUI j>-JI 

SELECT B 

APPEND BLANK 

REPLACE Date WITH T_Date 

REPLACE Clerk WITH M_Clerk 

REPLACE Invoice_no WITH Minvoice 

REPLACE Customer WITH MCust 

REPLACE Partjio WITH Partnumb 

REPLACE Qty WITH Quantity 

REPLACE Price WITH Sel_Price 

REPLACE Posted WITH .F. 

ENDCASE 

ENDDO(continue loop for checking part number) 

oLjLj IjL&J j^I^j j^kJI alu. IaL} jl^U &j> ^jj JUI .jjJIj 
( Scrolling ) SiLUI 3>j>j ^ iiUJI U4, Jl J>- > II jll*, .JUJI ■ ■•■ -" 
J* >- >T Jl jJijJLI *jL>^i j^ jx. JJi fij, .Jx,V jlnIj >„, jIjUu^ 
fjj\ jll* (Row ) >-JI f3j c~J3 £» JJij A^i .^.i ^f LLS" ^3 iiUJI 

: aJlji j^kJi j*> ,>- dJi ^ .( ^ ) 

Row = Row + 1 

* Scroll screen if reached end of screen. 

IF Row > = 19 

@24,1 

? 

Row = 19 
ENDIF 
ENDDO(while still adding items to invoice) 

^*-JI ^li^JI jOj*i ljj3\Jd\ »Jub ^i oLl^VI Jliol ,>* .L^a-yi jLLtj 
f i ijjj\J}\ UL> ju^, ol^ lil f JiiaJU jL*y ijjsUUI a^J ( Total ) J£JI 

m 



^UtfjJI Mm JrfiAa $*** 



: XJLjJI u* ^jj 5JUI jjkjlj .^ 

@ Row+2,40 SAY "Total:" 

@ Row +2,50 SAY Mtotal PICT "##,###.##" 

Pinvoice = "Y" 

@ 23,2 SAY "Print invoice ? (Y/N)" ; 

GET Pinvoice PICT"!" 
READ 

^Ij Jul^S" |*^» *i LioUaJI J-Juij ~J ( Y ) >JiitI«AI *-^&» LoJULtj 

Jl ( Record Pointer ) o}U~JI ^i>« liL^o ^ ^ ( Heading ) jjy£)l 
^ a-3, 1 > i >w ,*3 ^Dl J*<-JI j*j ( Tempinv ) cJjll OUI ,y J^w JjT 
jjuJI i->L«>j HjjjLUI ^ (_LuoJI obLj ,j^j-c |^iy .(StartTrans) ^-ssll 
ijl^i ^ IJ&*, 4jUU j»>j JliJI vjL-sJI Jl JlErtl fi Oi^JI lifl J£JI 

JJbJb- S^Lo i**** 3 p-i »j_pUII ^i tJL^fl JS" Jl>il ^« <lf^" XLfj .utUI 

L.JUL* .JUJb. o^fU LtUJ j*f^ ( EJECT ) ^i\ f LlcL.L JuoUJI J* 

C-Sjil ^illl ^ i^jU-JI iJbJ JlJI pJ^JI )>i >iw fJj .JJi f jii-JI JU^; 

[jus ,JJ aJij .( StartTrans ) s/IJJI ^-ii- ,> ju-Ij IjlsIj ( Tempinv ) 

*jL *—L j;>I •jijjli JUjJ .JLklJLI Jbjj L.JLLC jj^l U* ^-0 iJUl tjjjUJI 

.LJLJI ^i* g-bjj 2JUI j>-JIj •( Vendor ) >T 

IF Pinvoice "Y" 
SET PRINT ON 
? "Date:" , T_Date 

? "Invoice number:" , STR(Minvoice,5) 
? "Customer:" , MCust , SPACE(20) 
?? "Clerk:" , MClerk 

?Uline 
? 

SELECT B 

GOTO StartTrans 

LIST OFF WHILE .NOT. EOF() Part_no, A — > P_name, ; 

Qty , Price, Qty * Price 



? 
7 

? "Total:" , SPACE(34), Mtotal 
EJECT 

SET PRINT OFF 
StartTrans = RECCOUNT() + 1 
ENDIF 

lili .^jA j-jljj icU? 4jjj jl^ lal *jl>o-JI Jlj-» *^» JUI .>>JI ^j 
*J U>w. ( Again ) j-*dl bj£± *-** *2^ lr* **"*^' ^^ & ^ »L»' 
oU* ZJUJI fci» ^j (N) v>lC *ili £j>JI slj? HI Ui .( "Y" ) i~*JI 

: jlJUJI j^LJI J5G- ^ dUi ^i>j .JtfUJI .Liu 

CLEAR 

@ 23,2 SAY "Do another transaction? (Y/N)" ; 

GET Again PICT "!" 
READ 
ENDDO(add invoices while user does not request exit) 

cJjil ^ilil ,y la^jll o^U-JI iJUL g-li^JI fJ JL JUI *&1\ ^j 
j»jiy •u>o*^' , -*^ J> &■**** (»^j L*^ oU-JLI «_oJLo j>\ Jl ( Tempinv ) 
i-j^dl *>LJLI ^J^l cjjll ciUI ^i ^i^jll o^-JI ^^ UJ ^.li^JI 
e-^ 1 J! «-r*J'j *>>^l ^UUI ^ jXtb ^-b^JI rJ Jb ^ .^ji\ Jj, 
j^kJI JiU ^ viUi ^ .( SMenu.prg ) ol*~ll g-.^ J.-iiJ ^^1 

: ZJLJI 

CLOSE DATABASES 

CLEAR 

? "Updating transaction file , please wait ..." 

SET TALK ON 

USE SALES 

APPEND FROM Tempinv 



VV\ 



OiU^il Mm J j x i i - t ftdkjj 



USE Tempinv 

ZAP 

USE Sales INDEX Sales 

REINDEX 

SET TALK OFF 

CLOSE DATABASES 

RETURN 



\ JT^-juJI JL3-4 V - V - \6 



i_-.-."l ! .- 1 J-LjjC &&•*£ u) .« Lr ^JI |_y3-»J l. t a, « .i i j "ajj-p jJUj 4Jp LiXJjJ x_u 
^ UT j,*..J\ JLi-il !>ULo ,^^-j »i-> .«JL*C— JJ liiXiJI yJLkilj Oj^kll 

JjjjcJI IJL* .I>>Vj .-jivi-il ikJ^ tsJsS &A Vjj (Invoice) £-JI »j>!l» 
(Master.dbf) ^--i^l Oil I <y (Price) .j^JI ^ Ji> .iiL*l V,f f jL 

« ^Jl Jm-Jj\, i"l n-tXmJjl i — NO 

uaU J m ; ■*■" 2-JL5 j*» ( 2 ) *3jJI >Jk*w~LI jL^j Ujux g-aUjJI ll» Juiu> *Sj 
ijjjtiJ l»l ^^jLaj itU? jl ^^ .jj..T-„JJ jcjj g-objJI IJi*j .( SMenu ) aLu-il 
J-^J •( >^ £i>^ J! iJj ^-° jiJ^ i>* ii' ) »*•**-« IP* i$> oU-JI *fy»J jl oJ*u« 



Sales Report Options 02/20/90 09:30:25 



1. By invoice number 

2. By dates 

3. Return to sales menu 

Enter choice ( 1 -3) 

( \ - \6 ) J&A 

rrr 



juU^II -iLi J*Uo piijt 



uiU-»Vl c.1 



^yliJ £-1^ *-Jlj ,>* ( \ ) pJrll (OJCUJI jUiw L.JUL&J 

: Jldl Jlj — tl jiki iiJi*-* »jy3li o* jiyB icLt jl j*yj 



Look for what invoice number? 

^UJI jjj^\ jiki ( Invoice number ) tjjjLJI ^j JU-aL f j&i-il ^ ji Uju*j 



■"-""■"■""V'' ■:':'■"" xi-: '" "i" '""J.' -"s'M?$£&, tt~ -^X f" . Z:. : ^S ~ : -i - ■ :: :: ■:: ! V.-' v ~Mi\- J: -' :1 -:-■"- "- "-■- i 


Invoice number : 1246 
Clerk : Hassan 


Date 
Custom 

Price 


: 02/20790 
er : D. Fathy 

Total 


Part # 


Qty 


Part name 


AAA 
BBB 


l 

10 


Printer 
Floppy disk 


900 
16 


900 
160 





( \- - \0 ) J£i 

»jli J5U- **JI 2^> OULj i^ja! I*SU)I ^a ( 2 ) »3^JI ..V.W.? J I jl^u LaJLLfrj 

Enter start date : / / 
Enter end date : / / 

<tfr*u ,^1*<JI vir^" .rfkj ^iW--" ^i^J *i'"*"?J' P-iM pJ^— II i.«T^j LoJLLfrj 

( \ \ - ^D ) JSLUL ^jlli" LuUJI J* jl iiLUI Jx. .jSAll a» Jfc. oU-ll 

: ^tf dUij (MODIFY) ytil j\ (CREATE) ^\ f b^~L y J&\ .Lilj j^y 
CREATE REPORT Sales 



YYf 



^U,»4I Mm JrfiAa ^Jj^ 



( NY - NO ) Ji^JL ^tf LUi^l oLy^w. 0^ _' > 



J Page No. 
02/20/90 

': Date 


l 
Invoice 


Sales Transactions 

Sales Customer Part 
person 


Qty 


Sale 
Price 


■i 02/01/90 
f 02/10/90 


1243 
1360 


Magdy 
Medhat 


Salem 
Shawky 


SAF 
LAM 


20 
10 


700 
500 


■:\- :;.rU^-P"="="-JL-:!:^.I:-T:7SL---i:.= : -- ! : ^:-;. - -=i. 




1 AA^^ir- 


:^)i^gi-\.:i<u 


\ TOTAL 


1200 







( W - \0 ) jXi 



j Column 




Width 


Decimals 


■ana" 


Contents 
Date 


Heading 


Total I 


1 


Date 


9 






2 


Invoice no 


Invoice 


7 






3 


Clerk 


Salesperson 


14 




■ 


4 


Customer 


Customer 


14 






5 


Part_.no 


Part 


6 






6 


Qty 


Qty 


5 





N 


7 


Cost 


Sale Price 


10 





Y 


>:": ; :"' : " : " .-"-»:-:---"-:-:■:-"-:■:■.-:-:-:-:-:-:-"-:-■-:- 





( U - \o ) JSLi 



^LE g-ol^rJ 3-^^JI J-UJjJI _Li _Liu^l ,>-_, LJ 
II* ^^ ^ .uj^ ^ill jj^~JI _>: ,>«. j.j_x__1I Jlj_i ^ ( Salreps.prg ) 
£*\ijJ\ li*J ZJjVl ol^iwJIj .i^UJI J* a_*U, ji I_-L_ll J_i jijZM 



YYfc 






.( Master.dbf ) ^Jl ^iUlj ( Sales.dbf ) oUJU ^iL. £=i ^ - 

.(Sales.dbf) 

.AjL$JI jjjljj IjI-JlJI TlJjb 

jllll 



.( Sales.frm ) 
oLuJI £-«L^J i-u-ijJI I-JUJI JJ g^^JI ^ ,L«3*I jli£ -\Y 

.( SMenu.prg ) 

^.L^JI ^Isf v - i - No 

: JJUI jjJLJI &j> ^jJI jj^Us £*\jj> &£zj 

************ SalReps.prg 

* Print reports from the sales file 

* Called from sales, menu, SMenu.prg 

* Open files andset up relationship. 

SELECT 1 
USE Sales 
SELECT 2 



VYo 



-<Utf>ll _uu J^i&a jubj* 



USE Master INDEX Master 

SELECT 1 

SET RELATION TO Part_no INTO Master 

Repchoice = 

* Start loop for menu 

DO WHILE Repchoice ft 3 

CLEAR 

@ 2, 1 SAY "Sales Report Options" 

@ 2,60 SAY DTOC(T_Date) + " " + TIME() 

@3,0 SAYUline 

? 

? 

TEXT 

1. By invoice number 

2. By dates 

3. Return to Sales menu 
ENDTEXT 

@ 24,1 SAY "Enter choice(l-3)" ; 

GET Repchoice PICT "9" RANGE 1,3 
READ 

* ip no t exiting , ask about printer. 

@5,0 CLEAR 

STORE" " TO YN, Printer 

IF Repchoice # 3 

@ 15,5 SAY "Send to printer " GET YN PICT "!' 

READ 

* Set up printer macro 

IF YN = "Y" 

Printer = "TO PRINT" 

ENDIF 



YY1 



juU^II JX, JrfiAa £«b>* 



ENDIF 

* — Print appropriate report based on request. 
@5,0 CLEAR 
DO CASE 

* Case 1 : Search by invoice number. 

CASE Repchoice = 1 
@15,5 

INPUT "Look for what invoice?" TO Isearch 
CLEAR 
LOCATE FOR invoiceno = Isearch 

* If found , print invoice. 

IF FOUNDO 
IF YN = "Y" 

SET PRINT ON 
ENDIF 

* - - Print header from first record 
* with that invoice number. 

? "Invoice number : " , Invoiceno 

?? "Date:" , Date 

? "Clerk:", Clerk, "Customer:", Customer 
? 

? "Part # Part name Qty Price Total " 

* Print data for all records with 

* — that invoice number. 

LIST OFF WHILE Invoice_no = Isearch ; 
Part_no,B->P_name, Qty , Price , ; 

(Qty * Price) 
IF YN = "N" 

EJECT 

SET PRINT OFF 



YYV 



xJm&O -U* J jiJn ^jb^ 



ENDIF 
ENDIF(found) 

* Case 2 : Search by dates 

CASE Repchoice = 2 

STORE SPACE(8) TO Start , End 

@ 15,5 SAY "Enter start date" GET Start ; 
PICT " 99/99/99" 

@ 17,5 SAY "Enter end date" ; 

GET End PICT ,, 99/99/99" 

READ 

Start = CTOD(Start) 

End = CTOD(End) 

CLEAR 

* Print the report. 

REPORT FORM Sales FOR Date > = Start .AND.; 

Date < = End & Printer 
ENDCASE 

* IF not going to printer, Pause the screen 

IF YN # "Y" .AND. Repchoice #3 
? 

? 

WAIT "Press any key to return to the reports menu" 
ENDIF 
ENDDO(while user does not request to exit) 

* When done return to sales menu 

SET RELATION TO 
CLOSE DATABASES 
RETURN 



YU 



( Salreps.prg ) g-.^! ,—L iU*ltf Iju, ^-b^JI ^ J^l *j*JIj 

^.jMi £i dJij .ou. ^^fill £^ oj-4 **•=* ri ( Sales.dbf ) oU-JI 
.( Date ) jtyLJI J ( Ivoice number ) lj>;UII ,Pj J* xjm jjjUs ItU* 

i>Uil jji v ^' vaVN* iJy oA ^' # • jUij ^M &t-> ; -»> ,UJI 

^^1 villi jtxi f ;L IjjSUJI ,> Lii-JI (*-! JUiV, .^-^ill r LU=J JJ 

.oL>JJI »i* jtij- SJUJI j^LJIj .ol*-JI uiL; aIijjj ( Master.dbf ) 

*************** SalReDS.prg 
* Called from sales menu , SMenu.prg 
* Open files and set up relationship. 

SELECT 1 

USE Sales 

SELECT 2 

USE Master INDEX Master 

SELECT 1 

SET RELATION TO Part_no INTO Master 

: olji»JI fci* jt-i>J IJUI jjii-Jlj .( Repchoice ) 5/1111 

Repchoice = 

* Start loop for menu 

DO WHILE Repchoice # 3 

CLEAR 

@2,1 SAY "Sales Report Options" 

@ 2,60 SAY DTOC(T_Date) + " " + TIMEO 

@3,0 SAYUline 

? 



Yv^ 



■eiUrffll Mm Jii&t £«bjf 



? 

TEXT 

1. By invoice number 

2. By dates 

3. Return to Sales menu 

ENDTEXT 

@ 24,1 SAY "Enter choice(l-3) H ; 

GET Repchoice PICT "9" RANGE 1,3 
READ 

i~DI JUilj ( Printer ) Villi ^jcj. .Ltil ^^ iJLJI .>»Jlj 
JJj juu i^UJI J~i-iiJ j/LT 4^ljLk=«^ ^Jdll li» ,> ( TO PRINT ) 
dJS ^ .£j>U 3u5LUI ^ ( 3 ) fSjJ f J^«i-Jll jUSl f jl* iJl» ,y dUij 

: JJUI jykJI J*. &> 

* IF not exiting , ask about printer. 

@ 5,0 CLEAR 

STORE" " TO YN, Printer 

IF Repchoice # 3 

@ 15,5 SAY "Send to printer " GET YN PICT "!" 

READ 

* Set up printer macro 

IF YN = "Y" 

Printer = "TO PRINT" 

ENDIF 
ENDIF 

^i^l i*U> J> ( DO CASE ) jA\ j.ljLJ^-1 J^ey* £>\J\ ..fcJIj 

ijtpUJI (Jj Jx .Lj I^UJI r J^-il ilj lili .(.J^-ll jL^-l «r— > ^j^' 



Y f. 



xA^aU Mm JrfiAa pfojj 



( Heading ) j±fil\ at* 1 * c^j-v g^^' r**i J^r»— J' '-i* jh'j •|*Jj-" '■*■* 
J-**II p— lj ( Clerk ) £-JI iJL*j ^UJI utbjli ^J J-c ^>^«j ^111 
ijLJIj ( LIST ) ^Vl (.jlJw-j ^ .£*JI ^jbj ( Customer ) ^^lill 
(Jj ,> djZX ^1 oX^-JI £t *> oLL, ULt jl ^»^J ( WHILE ) 

: JLLjJI (Jl* 7tJ»>> 5-JUI jj.,h Hj .IjjJliJI 

* Print appropriate report based on request. 

@5,0 CLEAR 
DO CASE 

* Case 1 : Search by invoice number. 

CASE Repchoice = 1 

@ 15,5 

INPUT "Look for what invoice ? " TO Isearch 

CLEAR 

LOCATE FOR invoiceno = Isearch 

* If found , print invoice. 

IF FOUNDO 
" IF YN = "Y" 
SET PRINT ON 

ENDIF 

* Print header from first record 

* with that invoice number. 

? "Invoice number : " , Invoiceno 

?? "Date:" , Date 

? "Clerk:" , Clerk, "Customer:" , Customer 
? 

? "Part # Part name Qty Price Total " 
* — Print data for all records with that 

* - invoice number. 

LIST OFF WHILE Invoicejio = Isearch ; 
Part_no,B->P_name, Qty , Price , (Qty * Price) 



YH 



-«U*« JL. JrfiAa ^^ 



IF YN = "N" 
EJECT 

SET PRINT OFF 
ENDIF 
ENDIF(found) 

,jlJc~1I iJU* 3JU jji jjjiJI ^Lj J^j*- *^> J-* f^ u*''*^' 'J^'j 

,^& ubjJI JL-j ZJUJI fcAA ,_,*} ■ !• >> * ■ » tj^ JDti" C»J ^1 CjLh-JL IjjyC 

jjjiJI - tJ j^> ^jlJo-j ^ ( End ) iiUJI jtjjbj ( Start ) 3L,LJI juyb 
: SJUI jjk-JI Jjli- ,>. aUi ^ .UjLiJl j-. ,^JI ( Sales.frm ) 

* Case 2 : Search by dates 

CASE Repchoice = 2 

STORE SPACE(8) TO Start , End 

@ 15,5 SAY "Enter start date" GET Start ; 

PICT " 99/99/99" 

@ 17,5 SAY "Enter end date" ; 

GET End PICT "99/99/99" 

READ 

Start = CTOD(Start) 

End = CTOD(End) 

CLEAR 

* Print the report. 

REPORT FORM Sales FOR Date > = Start .AND. ; 

Date < = End & Printer 
ENDCASE 

L^ju ^1 i-i^JI ijj-^l a- C^^ 1 ^^ ^^ ^ ***** 

dJij U*- J-UJI ^-b^JI j-jk^; ^1 3-^yUI Ij^l Jl r ^C-il 

.( CTOD ) SJIjJI f IJLJw-,U 



vrr 



aJUixU Ma J*>Aa pkiji 



yi > ir* ( Pause ) U**J J-iLJI »JU] J^> ^ ^ ^jUI .^Jlj 

: *JLJI jjLj\ 

* IF not going to printer, Pause the screen 

IF YN # "Y" .AND. Repchoice # 3 

? 

7 

WAIT "Press any key to return to the reports ; 
menu" 
ENDIF 

l>j&\ oliUI £U\j hJJ±)\ iiUJI .1^1 J^i. ^ ^ ^LJI .j^JIj 
JAi ,>-. dUi p^y .( SMenu.prg ) .Uxl-^L ^Ull ^-b^JI Jl Ji^JI ^ 

ENDDO(while user does not request to exit) 

* When done return to sales menu 

SET RELATION TO 
CLOSE DATABASES 
RETURN 



YVT 



attsUI M* J*AAa fl** 



jAc fjiialutll Jt-iill 



2*\Xt\ t*I* J.tml &»bji 



vr« 



iSUalil JU J**Aa $tli*j 



oUU J~»wj ^A^-i ( Inventory ) ojUII g-«l^ ,>-* •>?* >* £r°^rJ' '-^* 

j.j^JII jLSu LojuLfr g^l^JI IJu> J-J«w ,*^j .tjLijI j-—. jDI ( Newstock.dbf ) 
.( \ ~ U ) jHjJI >l .jjUJI ^U^J V^^ 1 ***l*" 0-* ( 3 ) fij jUsVI 



Inventory system main menu 02/20/90 



1.. Manage master inventory 

2. Record sales 

3. Record new stock 

4. Exit 

Enter choice [J 



\ - \\ ) J£a 



New stock system menu 02/20/90 08:30:45 



■g«ftW:V>:^iaM^^^^^ 



1. Record new items 

2. Print new stock data 

3. Edit new stock data 

4. Exit 

Enter choice (1-4) 



r - n ) jsis 



£~>«tf j 1 ^Lc *^LJ» ji (Transaction ) «juj^. tf^-ijl^j -i *?....,ii »^xj LjUJI 



vrv 



rtL&VI Mm Jj-a- fAlyi 



gjbjJI v-^j 



N - \1 



_,LjSI ,> .Uy .^>Vl A5-5LJI ^.yi J-*i3 ^i f5UoIL (.jjy tfJJI ( NMenu.prg ) 
SjLi»L j.JLiw-JJ ^— j ^JLJI ( NewStock.prg ) g-«lJ^JI Jl ^jiiJI ^ pA*i-il 
gjt. ^Ul ( NewReps.prg ) j^-b^-JI Jl ^JLJI ^ J\ .LujljJI ,JU-»Vl oU-j 
^1 oLjLj JjJlo £— . j ^ill ( NewEdit.prg ) g-^jJ' J! Z/^ r^ -»' vi^' 

p-ob^JJ ,^^1 yuS^/JI ft»i»ji Jf ' j£-2J(j 



JE 



NewStock. 



From IMenu.prg 
NMenu.prg 

Present the menu of options 
for managing items records 



Add new transactions 



I 



?£nk reports frbin (hie: 
ijNe^t^dMl;: 



NewEdit.prg 

Edit the NewStock 
database file 



{ r - \*\ ) JSLi 



( NMenu.prg ) iiL>>l a*5U ^.b* r - \i 



************** NMenu.prg 



m 



ttlayi Jli JrfiAa ^.bj^ 



* Menu for managing New Stock portion of Inventory 

* system . Called from Inventory System main menu. 

* Set up loop form presenting menu. 

Nchoice = 

DO WHILE NChoice # 4 
CLEAR 

@ 2,1 SAY "New Stock System menu" 
@ 2,60 SAY DTOC(T_Date) + " " + TIME() 

@3,0 SAYUline 
7 

7 
TEXT 

1. Record new items 

2. Print new stock reports 

3. Edit new stock data 

4. Return to main menu 
ENDTEXT 

@ 24,1 SAY "Enter choice(l-4)" GET Nchoice PICT "9" RANGE 1,4 
READ 



* Branch to appropriate program. 

DO CASE 

CASE Nchoice = 1 
DO NewStock • 
CASE Nchoice = 2 

DO NewReps 
CASE Nchoice = 3 
DO NewEdit 
ENDCASE 
ENDDO(while Nchoice # 4) 

* Return to main menu 

RETURN 



aaUaVl M* Jj- A " ^4i^ 



( Newstock.prg ) JU^I obL JUJ gtls* r - V\ 

2L-5UJI g^U* oP *J^\ i-iL5 o- ( 1 ) r*^' f J^-ll jU*w U.U* 
pi 3JL*JI a* J>j .^LiiJ ( NewStock.prg ) ^l^JI Jl JJ£l» ( NMenu.prg ) 

: fj&T...JJ aJUI UL.^1 jfkfj ZiLJI £«*» 

Enter data for goods received 
Part number :- 



jL^>jiH jliLLcJ £* «j*JI II* jj^j ^jLt 4J jt_i>jj JJLij ^fk; ^ ( Beep ) JjLL^ 

: jN\S dJS, .iJli »^ iJjUJLI 

Enter data for goods received 

Part number :- : No such part !!! 

t-L^.&.ji U&Jj »JLjJl> j»L3jIj i_JLl^>I < i ynfi «-oLjj_JI IJL* jl aJu-^La V^iJ 

«_oLjj_JI (jAt^-c IJL*j .oULjJI SjlcLj j^J L^oUjI ojj>-j^> «JLl^>I ^_a oL-*^ 
.(Master.dbf ) IS —?J\ ^Jlll Jc*-ij £*Ioj ^ ^jl^JII ( Addnumbs.prg ) 

Jx. «j*JI IJL* *— il J*j*i £-»lJ>JI »ji *j>y «j> *JjJ »Jj»iJll Jl>i| •A^-t> 
^SLJI ^ ( J^l r W £i> b ) «■*■■"» IJ^* JL5-iI ^jb Jl JJL^L SJbLUI 
^ wJLL; (^ i>UJI »_~-> ( Vendor ) ^sUI p— I Jjjlo J ^ U .( Vendor ) 
: ,jjW dJij ..Ij-iJI jju-j »J:.^JI Laa j-« SjjIjJI <L»£JI J^ ^JpwJI 

Enter data for goods received 

Part number A-122 Shirt 

Quantity : - Price: 

Date 02/20/90 Vendor : Hasan 

. };,^ll ^ jLu ^b^JI jli SJUJI Jy*JI ^ oULJI JU-il 0- *Lp7' -^J 



tiUaUl -U« Jrfiia g-ibj- 



.iJli \y> SiLi/yi i*Jl5 Jl ^>>J JU-jVI ^Li. 

( PSEUDOCODE ) XJ,</I oljliJI ibf i - V\ 

.( NewStock.dbf ) «U>?I UL.., ( Master.dbf ) ^^1 ^iUI jci ^ - \ 

.•juotJI oL^^I oULj J : -w„.,tI *jj\£z i*l> jj>So *Ij - Y 

j^-wJjJI ,-illl ^ .j*JI li* J.C li^JL g-bjJI ^ e ^l jjj JUil jll* - r 

. .(Master.dbf) 

.JLjJLj- fjj Jl>ilf *J ^L-Jlj f&lJLI jjj^w |»li .j*JI jjj J* j>UI -JLC. JLLC - i 

•JjljJI A~»£JI ^ ^J&lJM Jlj-j *^Lj ^j* ^i; «>»JI jtJj J-fc j>£*JI JLLfc - 

.£j>JI f J^JU yik; ^ oL-,Vl JUol ^ jl>L^I (O; " 1 



*************** NewStock Dre 

* Data entry program for goods received 

* Called from New Stock, NMenu.prg 
SELECT A 

USE Master INDEX Master 
SELECT B 

USE NewStock INDEX NewStock 
SELECT A 

* Set up loop for recording goods received. 

Partriumb = "x" 

DO WHILE Partnumb # " " 

@ 5,0 CLEAR 

Partnumb = SPACE(5) 



Y£> 






ULoUl JJU J^iAa pAljf 



@ 10,2 SAY "Enter data for goods received" 
@ 12,4 SAY "Partnumber" GET Partnumb 
READ 

* - If a part number was entered , find it in 

* - Master file 

IF Partnumb # " " 
SEEK Partnumb 
DO CASE 

* 

* If part not found, warn user and 

* try again 

CASE .NOT. FOUND0 

@ 12,23 SAY "No such part !!!" 

? CHR(7) 

* - If found Append a new record to 

* - NewStock .dbf, and get 

* - rest of data. 
CASE FOTJND0 

@ 12,25 SAY Pname 
SELECT B 
APPEND BLANK 
REPLACE Part_no WITH Partnumb 
REPLACE Date WITH T_Date 
REPLACE Vendor WITH A -> Vendor 
@ 14,2 SAY "Quantity" GET Qty 
@ 14,22 SAY "Price" GET COST PICT "99999.99" 
@ 16,2 SAY "Date" GET Date PICT "99/99/99" 
@ 16,22 SAY "Vendor" GET Vendor 
READ 
SELECT A 
ENDCASE 
ENDIF(Partnumb# " ") 
ENDDO(While user does not want to quit) 

UY 



ttl*yi Ma Jrfiia ^Aiji 



* Close files and return to New Stock 

* menu. 

CLOSE DATABASES 
RETURN 

fij jU^i! ( Master.dbf ) .j-^JI «-«ill £iL fJ i. g-Li^JI o- Jb^l 0*JL» 
oUL, (>i ^ ( NewStock.dbf ) *iU,yi ^iL. ^ ^ L5" . JUoj ^ ^JJI «>>JI 

: iJUl jjk~J\ J^> ^ ctUi ,»^y .»jujl>JI uiLl^VI 

SELECT A 

USE Master INDEX Master 

SELECT B 

USE NewStock INDEX NewStock 

SELECT A 

: ZJUI 

Partnumb = "x" 

DO WHILE Partnumb # " " 

@ 5,0 CLEAR 

Partnumb = SPACE(5) 

@ 10,2 SAY "Enter data for goods received" 

@ 12,4 SAY "Partnumber" GET Partnumb 

READ 

: SJUI jjkJI S&- 

IF Partnumb # " " 
SEEK Partnumb 



vtr 



sabbVI JkL. JrfiiJ ^b^. 



: UUJI jjkJI Jjfc. ,>- dUij 
DO CASE 

CASE .NOT. FOUND() 

@ 12,23 SAY "No such part !!!" 
? CHR(7) 

oiLo SjL^j ,_P Jl> Jj^— » 3JLi»J ^ L5" .a>>_>-* ^j^J j,j&^JI Jl>iJ JJU- ,y liUij 
oUU « J- ^ LT .jlJ ?jua*JI obLJI JUil ^ j± ( NewStock.dbf ) *iU»VI 

^ «jUI ,»-,[j j^'j *— ^" Cr* f-i^-il Jlj-j Ui J^-J' p-U Cy^'j '-* i "* ,l (*5j 
: JULJI jjkJI J^p- ,>» idJi pJj .JUJb. «_iL-? JUo? j~f*ill ^ ^ *-«* 3 ^ 

CASE FOUNDO 

@ 12,25 SAY P_riame 

SELECT B 

APPEND BLANK 

REPLACE Part_no WITH Partnumb 

REPLACE Date WITH T_Date 

REPLACE Vendor WITH A - > Vendor 

@ 14,2 SAY "Quantity" GET Qty 

@ 14,22 SAY "Price" GET COST PICT "99999.99" 

@ 16,2 SAY "Date" GET Date PICT "99/99/99" 

@ 16,22 SAY "Vendor" GET Vendor 

READ 

SELECT A 

: ajuii j>ji J*- > ajij .siu,vi uu 

ENDCASE 
ENDIF(Partnumb# " ") 
ENDDO(While user does not ask to quit) 
CLOSE DATABASES 
RETURN 



UU#l Mm J^i&a ^Ai* 



( NewReps.prg ) 5-»L>>l >-i>l23 g-U* n - \i 

«Li jj^Ll; <j^0 ,jj iJuL>JI oLuohll oULj i*>lj-j .ji*~„.U uU^JI IJu>> ?*- , ■ 
J> ^i ji>HJI »Ju* JLdbj .Ijjuw ijuj »>a JjU ji ( Part number ) «>;JI ^ J* 
,>* UJJI oULJL j»j»iljL.I ji> ,>*• ( Vendors ) j^M' £* ^3 -*j olj^ ^i 

Jail .Aili^l *»ll3 J-. ( 2 ) fjj\ pJliilJU jliiw L.JUX. ^•b^JI lifc J-*Jtj pi, 

-( 1 - U ) J5LUI 



-T..-"'-"f-a'TO.-AA>JIH.,-.- J .-.-o.^.W.^IHll»-JW^M»! 

New Stock Sy stem Menu 02/20/90 02:2045 

1. Record new items 

2. Print new stock data J : 
/.'■-: 3. Edit new stock data 

4. Return to main menu 

Enter choice ( 1 -4 ) 




•iiliJI Jx 3LJUI iuiUIl ^3 ilUJI »Ju» ^i 



1. By part number 

2. By dates 

3. Return to New Stock menu 



ji^JI isU, tjjllJI itf lil Up >T Jl> ^ ( 1 ) ^JJ f j^JI jLjSI Ji*j 

• uii-JI IV iiU,?l *S> £^5 yJS j&j ^J\ \Xf) f ^oJ[| Utf JULCJ .*J jjytJI 



ru 



*3L*¥! JL. J#"* £** 



: jft\S LlfJI jujbj UUI gyb 



Enter start date : / / 
Enter end date : / / 






( -\ - \1 ) JSLiJI j ( - n ) JS^JI >l 



Page No 1 



Inventory Items Received 



02/20/90 



"l"*"!'!'' J"*' 1 "™! 



*^.>„...* J.jj...7*......JSfc.\...A. 



sv»\ ...a . . . v ,'!, .,,....„. ,1T^,,.. 



Part 
Name 



A-122 
A-122 



Part 



Shirt 
Shirt 



Qty 



20 
35 



Purchase 
Price 



500 
750 



Date 



02/20/90 
02/01/90 



Vendor Name 



Hasan 
Salem 



( o - U )JSLJI 



Page No 1 



Inventory Items Received 



02/20/90 



Part 
Name 



A-122 
A-122 
A-121 



Part 



Shirt 
Shirt 
Shoes 



Qty 



30 
20 
20 



Purchase 
Price 



750 
500 
500 



Date 



02/01/90 
02/20/90 
02/25/90 






v**.**.* j:.. 



Vendor Name 



Hasan 
Salem 
Hytham 



( -\ - \1 ) JSLi 



m 



UL*yi -U. Jji&a ^jb^ 



Jx «Lj ji ,j»JI ,^5j Jx .Uj j-y^l <~U> ill> ,y lf«h»wJj ji^tJJ ••*>!.» »jj-o 
.( MODIFY ) ^.Vl ji ( CREATE ) ^i\ f IJL^«L JJi ^ .Ijjuu. 3-uj ^ 
ijUtfj ( NewStock.dbf ) «U»")II oUl. ^ oLL; &-& $ v~ jiy^ 1 J <~>j 
,_iL. ^ jiytJI .UjI ju* f ^L dJJJ . ( Master.dbf ) lS ^>J\ oUll ^ oUL, 
: 3JUI ^.l/fl S&- o- «iUi ri» -W~- -Mj ^-^ l *JW «*Uj*j ^^V 1 



CLEAR ALL 

SELECT 1 

USE NewStock 

SELECT 2 

USE Master INDEX Master 

SELECT 1 

SET RELATION TO Partjio INTO Master 

MODIFY REPORT NewStock 

IjLu J-5 ( Dot Prompt ) iLiJI J^-l* &* < r ^&> j-*!/" 5 " 






HA* 



jL^i?^ JL>i{ *-^ ^y^l <LtjL JL=>UJI j Mil .nil j-frkj LoJLLcj 

: JUI JSLUI ,>- ^k. Li" ( Columns ) 



amja^jaaa;!fejwavjE«t^ 



Column 



aiiSffSffifffiE ■^Maiaagiais^Baasgjj^jF 



1 

2 
3 
4 
5 
6 



Contents 



Part_no 

B— >P_name 

Qty 

Cost 

Date 

Vendor 



^■mmmm&m>gmzi 



iZ^ii^iZ.^, 



Heading 



J^Jn&iMtm&iSMi 



Part 6 

Part Name 15 

Qty 4 

Purchase price 12 

Date 8 

Vendor 25 



( V - U ) JSLi 



Width 



h^^M&v^mamiUMt 



Decimals 



y^rnm^^ wp&®®&& 



2 
2 



Total 



N 
N 



Y£V 



ur - t j J JI ._ilil ,>. «^>JI ^l J_c Jj^pJJ ( B -> Pname ) a,L* L> J^/jLy 

.( Master.dbf ) 

g-Li^JI 3-jbf V - Nl 

Jwi g^lJ^JI :l,L£j L* ^i^SL. oj-j ( Sales.dbf ) oU-JI oUL.j ( Master.dbf) 
j^k-JI ,>* j^ g^t^Jlj .L^ ould SiUJI ^LfcJI £A\ ym Jl £^1 j^, 

: LJUI 

* Print reports from the NewStock file 

* Called from NewStock menu, NMenu.prg . 

* Open NewStock and Master databases. 

SELECT 1 

USE NewStock 

SELECT 2 

USE Master INDEX Master 

* Set up relationship. 

SELECT 1 

SET RELATION TO Part_no INTO Master 

* Start loop for menu 

Repchoice = 

DO WHILE Repchoice # 3 

CLEAR 

@ 2,1 SAY "New Stock Report options" 

@ 2,60 SAY DTOC(T_Date) + " " + TIME() 

@3,0 SAYUline 
- ? - 

n 



T£A 



aaUaitl Mm J#L&3 £*\i*i 



TEXT 

1. By part number 

2. By dates 

3. Return to New Stock menu 

ENDTXT 

@ 24,1 SAY "Enter choice(l-3)" ; 

GET Repchoice PICT "9" 

READ 

* If not exiting , ask about printer. 

@3,0 CLEAR 

STORE" " TO YN, Printer 

IF Repchoice ft 3 

@ 15,5 SAY "Send to printer?" GET YN PICT "!" 

READ 

* Set up printer macro. 

IF YN = "Y" 

Printer = "TO PRINT" 

ENDIF 
ENDIF 



* 



If not going to pritner, pause the 

* screen. 

IF YN # "Y" .AND. Repchoice # 3 
? 

? 

WAIT "Press any key to return to the Repchoice menu" 
ENDIF 
ENDDO (while user does not request to exit) 
* "- - when done , return to New Stock menu 



tlS 



aa*yi Mm jrfiita &&# 



SET RELATION TO 
CLOSE DATABASES 
RETURN 



Vo 



.sjtttfiM .iuJaap £* b .W 



gjUl) Jj=mAJI 






Yo> 



viUI ^ fS^dJ jjlidl r Uu o- i~--Jj .lj»i *£AJ .Uil pJ iiUII Jj-xiJI ,> 
LiL^yi iOJUj ( Sales.dbf ) <i»L*~ll .j-L, ( Master.dbf ) ^^--w^JI 
^i Jl« ^JJIj r lkJU J*SUI £»0,JI .liil pi J— **JI IJL» ^j .( NewStock.dbf ) 
tr „ 4 i v JI Olll oUL-J ( Updating ) ^jl»w f> i £-»L>JI IJL*, .*_j .>> 
<JJl.j (Sales.dbf ) oU-JI ^L. ^i iij^ 11 obLJI J-t «Lo ( Master.dbf) 
»jiL. J_»xo g-»L^ «Li;l ^ LaJ J-aill li* ^j .( NewStock.dbf) *jU»"i/l 

.XjL>VI «_«L« Jj-uj p~»bjjj oUJil 

( Master.dbf ) ^--^1 ojIII »i- j^u £.b>. \ - \v 

oL*£JI ^ oU-JU <_iU ^P iijjj-jil «JLw»Vl oL^ (t-a*y x-tlj^JI IJl* »jJu 

<JL~*jI oL*i" iiUsL »jij L^ .jul« *-JI *j ow> JiU l _ F >~Jij}\ «_AJUI ^j Ji^>jll 

oL*£JI ^j> oLbVI (_iL« ^j o>>jil £>L*£JI p-d£y LcjjI p-olj^JI IJLft »jJUj 

l»j oLlJSM »jla J ^> ^,--1^1 i_*UI ,ji ( On_order ) vJLLII cx*3 Ji> ^ »i>>jll 
y«-JL ( Purchase Price ) .JLl^SN »J^J .l^iil yL. Jjjuxj (.ji L^ .J*ilL l^jU»l 

-jJj Ij-^lj .v-i l-a l) ^ju» it>-L>l j^ju v » ... II IJL* jl i^*.j> JLJL&^H >_iLL> ,_» Sj^j-jJll 

...via-il Jtf^JI uiLo ,_j3 ij>>H ^jj^J'j oULJD ujimj j>T kp\j J^*-^ F-^^J' 

-yi JuiUII ^ ( 4 ) ^l {JSclA\ jL^u L.JLU. ^Ij^JI IJla J-JutJ *iy 

( v'- \v ) JS^JI >l .(Master.dbf) ^Jl Jill J-*i3 ^b^J 

Manage Master Inventroy 02/20/90 

l \ - W ) j£i 




.(PSEUDOCODE) 3J,Sl ol>*JI U* ■*»' ^ g^U^JI U* *,\&j 
( PSEUDOCODE ) *j/t\ ol>lwJI *l=f N - \ - W 

•^ *1jJ&ij lSj^ t*-*^^' t -*^' o' p**£«-*U £-*»>? <UL»j ^^ |»^J ~ V 

.jo ^UJI irofJilj oLu-il oUL* £i w - V 

.( Temporary file ) cj>« o»L. Jl ( l^liU J-*^ 

^ *j| jlAiJI ) cJ>il willl ,p o}U~, i>>j o-. jtftJI ^ - 1 

.( lijli 

oUUj ^-rijJI wiJULI £=i ^ Cj>1I oilll ^ o^U-» *j>j SJU ^j - V 

,jL-»Vl oL-S" ^ ijUij cJjll ^-AJULI ^ ,j-~Jj\ o»UI ^«3 ^ - A 

.oUlil £-* i5**l r>. ~ * 

.(Sales.dbf) oUJLI «JL> gj ^ -\- 

( Posted ) J-P-yJI Ji> «i £-*— ^ ( T - ) ^ J Ui ! ri " U 

.(Posted) UL>j3 

.olilil £-> J**| ^ ~U 

.(NewStock.dbf) «UVI OL. 

.a, u^UJI yfjitii kJL*j liLsVI uiLo ^Xi ^ ~^ 

.( Temporary file ) cj>> <-«Li Jl ( U*^ krj 



Yot 



"•^.i; 11 *-j***i n jmL>.m 

0L-.V1 clj" iiuu aJSj cJjii jail ,>- u-^ji jail *^jjbw ^ -u 

.( Onorder ) 

.oUJUl »-*> j'iUI *i» -V* 

.(NewStock.dbf) SiUVI ^iL- jci ^ -Y\ 

( Posted ) J->^' J-*> ^ e^ ^ < - T - > 2L * UI JUj ! r* ~ VV 

*3 0%w— Jl **»»■ jl A-i'jJ lift jl v!m> .liLbVl t_*L» Ctlky* £~*»J 

.ouui ^ j^ui ^ -vr 

.( MMenu.prg ) ,^—-5^11 UMl J?*^j g-*^ *-*£ J! £>>^' |*~! -Y ^ 

: JJUI jjL~J\ jjt ojSwj ( Updater.prg ) 0,. ...s ^ g-U^JI Li* 

* Update the Master File from Sales and NewStock. 

* Called from Master menu , MMenu.prg. 

* Ask user if sure abour updating. 

YesNo = "Y" 

@5,0 CLEAR 

@ 15,4 SAY "Update Master file from Sales and" + ; 

"NewStock?(Y/N)" GET YesNo PICT "!" 
READ 
IF YesNo = "N" 

RETURN 
ENDIF 

* Display a message that Master is being 

* updated from Sales file. 



Yoo 



.SlUrfftt SjH-Q gAkyf 



@5,0 CLEAR 

@ 15,5 SAY "Updating from the Sales file ..." 

USE Sales INDEX Sales 

* Copy all unupdated records to Temp file. 

COPY STRUCTURE TO Temp 
COPY TO Temp FOR .NOT. Posted 

* Make sure there are records in Temp 

SELECT 2 
USE Temp 
IFRECCOUNT()>0 

* Use Master file and index for updating 

SELECT 1 

USE Master INDEX Master 

* Update from the temporary sales file. 

UPDATE ON Part_no FROM Temp REPLACE Qty WITH ; 
Qty - Temp - > Qty , Date WITH Temp -> Date 

* USE original Sales file , make all 

* posted fields "True". 

CLOSE DATABASES 

USE Sales 

REPLACE ALL Posted WITH .T. 
ENDIF(record count >0) 
CLOSE DATABASES 

* - Display a message that Master is bieng 

* updated from the NewStock file. 

@ 15,5 SAY "Updating from the NewStock file" 
USE NewStock INDEX NewStock 



Yon 



LiUrfJi Sjti>1 £*b>; 



* Copy all unupdated records to Temp file. 

COPY STRUCTURE TO Temp 
COPY TO Temp FOR .NOT. Posted 

* Make sure there are records in temp. 

SELECT 2 
USE Temp 
IF RECCOUNTf) > 

* — USE Master file and index for updating 
SELECT 1 

USE Master INDEX Master 

* — Update from the temporary NewStock file. 
UPDATE ON Partjio FROM Temp ; 

REPLACE Qty WITH Qty + Temp -> Qty , Date WITH ; 
Temp -> Date, Cost WITH Temp -> Cost, ; 
Onorder WITH Onorder - Temp - > Qty 

* - - USE original NewStock file, make all posted 
* fields "True" 

CLOSE DATABASES 
USE NewStock 

REPLACE ALL Posted WITH .T. 
ENDIF(record count > 0) 

* — free up all work areas , and return to Master 

* — menu. 
CLOSE DATABASES 
RETURN 

( Updater.prg ) ^-L-^JI ^L Ju^L Lu, g-ob^JI ,>• JjVl « j*JIj 
£— j fji. f5 ( MMenu.prg ) 4JUjul,L f 13 jlil £*\jjJ\ ^-J ,J *^^>jj 
.( Updating ) «2-JL*dl ^ *^i, ^ j^hU f jlJo-JJ itu, jt>jc-) i-iUJI 



Y«V 



MLtiU Ajt»>i gjAiji 



jjU ( Master.dbf ) ^^J\ ^»UI jl f jtio-JU ^j*^ XJU, ^^ ^j ^ 
( Sales.dbf ) oLlJII «_iL. jci g-.U^JI f yu pi .ol*~il «_*L. ,>* 40*5 

: aJUI jjk-JI J^U- .y. oljkJJI »JLb juU ^...(Temp.dbf) cj> 



YesNo = "Y" 

@5,0 CLEAR 

@ 15,4 SAY "Update Master file from Sales and " + ; 

"NewStock?(Y/N) M GET YesNo PICT "!" 

READ 

IF YesNo = "N" 

RETURN 
ENDIF 

* Display a message that Master is being 

* updated from Sales file. 

@5,0 CLEAR 

@ 15,5 SAY "Updating from the Sales file ..." 

USE Sales INDEX Sales 

* Copy all unupdated records to Temp file. 

COPY STRUCTURE TO Temp 
COPY TO Temp FOR .NOT. Posted 

( Temp.dbf )oU~JU cJjll ^M\ £& fJ 3j ^-l^JI ,>• .y 1 ^ 1 O^b 
fi . ir -sJ\ aUI Jl \4s\A4 J->jJ *jJmi ci^LjwJI JS" J* *&. ^ 
<_iU> «_* J-oUJI ij^lkJ liUij kjtill lift ^ ii^Ljw i>>j ^ jl^LJL ^>L 
£=i *Ij *3 .i«3>Lo _^i £ilu Jl ^aJj ^ ^5Uj JJi 0*^ jj^ ^L; » JL * 15 
^ .jjA Jrf SlkL* ,y -u ^UJI ^^Jlj (Master.dbf) ^Jl diX\ 

: SJUI jjkJI J3U ^. aia 

* Make sure there are records in Temp file. 
SELECT 2 
USE Temp 
IFRECCOUNT0>0 

YoA 



AtitfJI ^|.|1H>1 £*U>f 



* Use Master file and index for updating 

SELECT 1 

USE Master INDEX Master 

J \ij>^\ oL-£JI &* (Temp-> Qty) c3jU Jiil J o>r>ll oUSUI 
^^Jl oOJLI ^j^o >T j^,U J^juu- pi ,J ( Qty ) ^--5^1 Oill 
j^k-JI jyj. j-. dUi ^ .cUJll vjJu ^ i>?J il j-»UL, ( Date ) 

# Update from the temporary sales file. 

UPDATE ON Partjio FROM Temp REPLACE Qty WITH ; 
Qty - Temp -> Qty , Date WITH Temp -> Date 

piV J± LfW f3 yiJI o^U-JI j--3 aTjU &> & £>\J\ **l\j 
pi c^- *JUaII »i* ,y ( Posted ) Je-j^' J*** p*»^-ij -*->l5 »j-« U^-j 3 
ciL. o"3U~ £-*J JJLJI IJub ^ j^w, ( True ) J ( .T. ) 3L-*II JUjI 
.^.^Jl uiJill Jl L$L>>; pj jlj oLjL-JI ^> jl ,yju IJm>j oU-JI 

.ZJLjJI «i» {^jj 2_JLiJI j^k-Jlj 

Close DATABASES 

USE Sales 

REPLACE ALL Posted WITH .T. 

,y» tr<»V' ( - J ^' ^f- 1 ^ (P *-^-" 0^*J i^> Olilll «-*> J^Lcl pi *3 

: iJllll jjkJI J}1> ,>- dUi piy .lil^i\ uiLi 

ENDIF(record count > 0) 
CLOSE DATABASES 

iiUsVI i_iLo J5U- j^e tijjundl JUL*. JljLj J*il> (y> pi ~*\J*}\ •j^Jlj 
J^ i/L.j ^»jx. Vji pi v^-> iiLJI Ubjai\ ^Jcu ( NewStock.dbf ) 



vo* 



^•Vl LIS" j-* jj Aii *i^>j .( Temp ) cJ> wiL. J| ( SiUtfl uiLo Cr . 
( IMenu.prg )ojUll £-1;^ ^Jl ^-b^JI J ( SET SAFETY OFF ) 

.oljlwJI u* iuLs j-i.jj aJUI jjkJIj .JjL uJL. j> £-jJI 

@ 15,5 SAY "Updating from the NewStock file" 
USE NewStock INDEX NewStock 

* Copy unupdated records to Temp file. 

COPY STRUCTURE TO Temp 
COPY TO Temp FOR .NOT. Posted 

J*> ^-o tills, ( Temp ) cJjll «_*UI J> o"iU- a>>, &> jtftdl ^ ^ 

SELECT 2 
USE Temp 
IF RECCOUNTO > 

^ *j j^UJI ^^iJI «^»Loj ( Master.dbf ) ^—^Jl vjiill j^ (^ ^ 

: LJUI j^-J' J^ 

SELECT 1 

USE Master INDEX Master 

CJjll .Jill Jyb- ,y »A>>^ 1 p-i*" J-s^r^ ^ ^ g-* 1 ^ 1 f>*J r 5 

^ Si^^ll i~£JI ZJL*L JJi, .( Mastec) ^J\ ddU J[ ( Temp ) 
•(Qty W-T 11 ^' tP ^j 11 *s^' (> (Temp-> Qty) *-£JI Ji> 
( Temp- > cost) c3jl\ ^JJ1\ J> i>*4l ^*-JL ^a-JI Ji-^l ^ LJ" 
S-^JI ,>- ( Temp->Qty ) S~£JI £> ^ US' .£^x*3 >T j^b dUtfj 
»j* JlJUj £^»j3 SJLJI jjkJIj .( On_order ) vJUl ^^ J** <J »*ytjM 

.ol>iJI 



YV 



aUjJI Iijiq £*br! 

* Update from the temporary NewStock file. 

UPDATE ON Partjio FROM Temp ; 
REPLACE Qty WITH Qty + Temp -> Qty , Date WITH ; 
Temp -> Date, Cost WITH Temp -> Cost, ; 
On_order WITH Onorder - Temp -> Qty 

J,i> J/ J, ( .T. ) i_iH JUil ^ ^U^l ^ ^J-Vl .^Jl ^j 
oUUI £-> l ^LiJ ^ ^ i-ib ;^ L#L>^3 ^V js> ( Posted ) J->>JI 
UUl j^kJIj .( MMenu.prg ) ,^--5^1 JA1\ J-i-is i*5l5 Jl Ia^JIj 

* USE original NewStock file, make all 

* — posted fields "True" 
CLOSE DATABASES 
USE NewStock 

REPLACE ALL Posted WITH .T. 
ENDIF(record count > 0) 

* free up all work areas , and return to 

* Master menu. 

CLOSE DATABASES 
RETURN 

( SalEdit.prg ) oL-Jl JUL. gr**** g*kn v - \v 

J->b pj jui &WI g^b^J Zj^ll iitid\ JL*>UI £-»L-JI ^j* o-« J*»^j U 
v—Jlj .J^iJI IJL* Jl ( SalEdit.prg ) oU~il JiL, j^^i ^UJI ^b^l j>a 
y— -JjJI tilll oULj ifclk. |ji* Jl ^ijj J-»>dl ZJLt Jbu ^K.rt-JI ji liUi ,ji 
J ^ k&j oLyLt i^i* ^L jjioJI jf Ll*> jJ *ui .gSljJJ ( Master.dbf ) 
^i «_il*aJI IJL» JjJUi j.15 lili .»j^e ^ Vju &j±£- i_ii-JI U^ ^UJI i— £JI Ji> 
OUI ^i ^V J*wJI 0* Ji ( Master ) <J ^J,J\ dih Jl 4-*^ jl~ ol*~ll aL. 
jli JJJUfj .o>ll ,> LwwJl 5—SJI ,>t \jfAA tr - s spi JUll jw^V JULy cr - s s / II 

n\ 



julil^Jl »l ^t frl^^ ^Aljj 



•^*-« J*'—' ObLj \_jl J j Jj C j »JLiC—JU rL-JI -\ 

.yu oU-JU uiLo ^ ( Part number ) *j> ,Jj jL; J-jJ^ f^^x-il ^,13 lil -Y 
^ \j*-J?j jA-JI <3»JI |»3j Jx- uL^JI IJl* j-» ix-Lil l~SJ\ ZiL&L g~*lJ>JI 

•t^-eJI wiill ^1 JuJ»JI ,j»JI ,Jj 
^ JjjJI i_jLu> ^ ol*-JU uiLi ^ LfcLII Z-*£JI JjJjCj .jiJclJM .13 lil -V 
i^XII ^ i~»£JI »I* ^ji> (*^i |*5 .JjuajJI 3L*SUl, LfJU-il J--. ,yjl Z-»£JI 



J..JL.JI ^j ( Updating ) £* i x*ci\ j^b JJ^, Jl.^11 £-> ^3 4jV oU~II 

.( Editing ) 

.iiLUI J* SJUI ilL-^JI ^^ Jl jifc aLjlLj Jim ^.O^JI Li*, 
Enter Invoice number to edit (0 if none) : 

Jf jojtj g-^l 6p ^ J*^ 1 <tOJJ»1I •jj^LiJI ^j f JL>cu-ll v^SLj L.JUA, 
fJ i iJUIl d* ^j .likiJI oLl^\I oLL> !:. *?. I^pUM *xa 1^>\SJ\ i*>JI 
"•- •--- JjJbcJL X-»U iiLi ^i* oLjUj J,ajal oL-^l J* Jb-J jUi-L f JL^-ll 
.( Y - - W ) JSLiJI >;l .1**^. J ULjulJ .Ji-JI IJu. oliU 

sjSL*! LS" .aLjl-3» Oi-JI IJL^ ^U- jU «^i Jl j-ijll djj^s r aiaUI ^Jn-jy 

: jfttf iftLUI JJL-1 jilb -tfJJI Jlj — VI f U ( Y ) U* 

Delete this record ? (Y/N) 

■_iv f '» LI* « UJI Jujj Ujlu. liUij 

■JSjl Uii\ J* LjVUI o^l -Itk ««U»--Uj g-bjJI fJ iy 



-gj ii'tlfiJifiH jiffi i -i4 /lfflHi \ fl AJIwIt tU 




Invoice Number : 
Part Number : 
Clerk : 
Quantity : 




Date 



Customer 
Selling Price: 




Delete this record (Y7N) 



( Y - W ) J£& 

( PSEUDOCODE ) i-JjVl ol>M N - v - Nv 



.S/IJUI 



'I ^ J U- a < LtJl w - \ 



*j ^UJI u-^iJI uil«j ( Sales.dbf )olxJU ^*JU juii ^ - f 

,( Sales. ndx ) 

f-liwJI jAxZ fZj JjjjUJI j^Jj ^Ji Jj>w <^l J*c jjJSjJI j^Xj 1 lil - o 

JL* jl/ lilj .oULu JjAjG wjjJULJI J*wJI ^ ^ aJlj^j j.a^l-JJ 

.aJI yUJJI -jj j>Ij Jj»w 
i>i/»vj ^L*-^ 1 *-«J-« Jt ajLLj JjOju Lj^JLtdl Jj^JI J| oUUI ^ - V 

.iji'li olj**^<i ,^i Aji o^jll i^jiJI 



nr 



^ **-* j ^jizJll f.15 ,*; ( Posted ) *L>h ^ jj J^-JI jlS" lij -\ • 

^J alii ,> ^Jiill .j^-JI f3j Jl vL*JJI ri ( Part number ) 
Jl ijUJJI fZj Li* .4JL« Lf-»Ujl j^ ^1 JLJUl **Li.lj ( Master ) 

juXII Jjjuco r J^JU f l5j ( Posted ) *L>jj ^ jj J^-JI jtf lil -\Y 
•tJUJtwJI JL»5Ulj 3&LJI JL*£JI ^ jyUI oL> *ii 

*— SUI ,>* Jytfl £>j tr-^^ 1 '- ijyl1 «P -J** 1 pJj J! V^*^ 1 ri ~^ r 

.( Quantity ) tij>jll 
.J>\ «j> ,/jl jULjJI *i* jIj&j .j&;..,*U ^U_JI -\l 
k_1I ZJL.& «L^j[ *~» gr-^-oll Lb^pu j^j j3 o^ isJLa cjli* lil -\o 

.( PACK ) s>S\ f bii-L 
.( SMenu.prg ) oU~AI t_iL> J~i-i3 g-*^ Jl %j>J\ f± -\"\ 

g-UjJl *l=? y - y - w 

***************** SalEdit Drc 

* Edit the Sales File and update Master. 

* Called from Sales Menu , SMenu.prg. 

* Set up memory variables. 
No_Dels = 

Search = 1 

* Set up loop for invoice numbers . 

DO WHILE Search # 
CLEAR 



Hi 



@ 2,1 SAY "Edit Sales Transactions" 

@ 2,60 SAY DTOC(T_Date) + " " + TIME() 

@ 3,0 SAY Uline 
7 

7 

@ 15,5 SAY "Enter invoice number (0 if none) : ; 

" GET Search PICT "9999" 

READ 

v. 

* If user does not request exit, continue 

* with edit. 

IF Search > 

USE Sales INDEX Sales 

* — Count records with that invoice number. 

COUNT FOR invoicejio = Search TO Howmany 

DO CASE 

* — If invoice not found , warn user. 

CASE Howmany = 

@ 24, 1 SAY "No such invoice number" 
? CHR(7) 

* If invoice number found , proceed. 

CASE Howmany > 

* - - If. several records have this invoice 

* - - number , dispaly them and get the 

* - - required record number 
IF Howmany > 1 

@5,1 CLEAR 

? "RecNo Part ff Qty Price Clerk" 

?? " Customer Date" 

7 

LIST FOR Invoicejio = Search Partno , ; 
Qty, Price , Clerk, Customer , Date 

9 



-no- 



INPUT "Edit which record:" TO RecNo 

GOTO RecNo 

* Otherwise, just go to the record. 

ELSE 

LOCATE FOR Invoice_no = Search 
ENDIF 

* Store original field values to variables. 
OldPart = Partno 

01d_Qty = Qty 

* - - Display data on edit screen and allow 

* - - edit. 

@ 5,0 CLEAR 

Deleted = " " 

@ 7, 1 SAY "Invoice Number" GET Invoiceno 

@ 7,44 SAY "Date" GET Date PICT "99/99/99" 

@ 10,1 SAY "Part Number" GET Part_no PICT ; 
"!!!!!" 

@ 12,40 SAY "Customer" GET Customer 

@ 15,1 SAY "Qauntity" GET Qty 

@ 15,20 SAY "Selling price" GET Price 

@ 24,1 SAY "Delete this record? (Y/N)" ; 

GET Deleted PICT"!" 

READ 

* After editing , adjust Master file. 

DO CASE 

* If transaction to be deleted , 

* delete it and add its quantity 

* back to the Master file. 

CASE Posted .AND. Deleted = "Y" 
DELETE 
No_Dels = No_Dels + 1 

YV\ 



USE Master INDEX Master 
SEEK 01d_Part 
IF FOUND() 

REPLACE Qty WITH Qty + 01d_Qty 
ENDIF 

* - If Part number changed , add 

* - quantity to old part number, 

* - and subtract it from new part number. 
CASE Posted .AND. Partjio # 01d_Part 

New_Qty = Qty 
NewPart = Part_no 
USE Master INDEX Master 
SEEK 01d_Part 
IF FOUNDO 

REPLACE Qty WITH Qty + 01d_Qty 
ENDIF 

* - -If quantity changed 

* - -adjust the Master file quantity 
CASE Posted .AND. Qty # 01d_Qty 

Diff = Qty - 01d_Qty 
USE Master INDEX Master 
SEEK 01d_Part 
IF FOUNDO 

REPLACE Qty WITH Qty - Diff 
ENDIF 

SEEK New_Part 
IF FOUNDO 

REPLACE Qty WITH Qty - New_Qty 
ENDIF 
ENDCASE(adjustments after editing) 
ENDCASE(Howmany > 0) 
ENDIF(Search > 0) 



Y"\V 



■sjU^JI i^ajp £^ft 



ENDDO(while still editing) 

* If there are records to be deleted , Pack the 

* sales database file. 

IF No_Dels > 

@ 5,0 CLEAR 
? "Deleting unwanted records from the sales file.." 

USE Sales INDEX Sales 

PACK 
ENDIF 

* Return to Sales menu. 

CLOSE DATABASES 
RETURN 

c£U-JI iJi* ^^iJ (No_Dels) i/IJLII j^jcu. .UjL Ijlj g-l^Jlj 
JjjjlUI ,Jj Cfi^d ( Search ) i/LUI j^n* .Li;l viUtfj L^w wjlLlI 

No_Dels = 
Search = 1 

DO WHILE Search # 

CLEAR 

@ 2, 1 SAY "Edit Sales Transactions" 

@ 2,60 SAY DTOC(T_Date) + " " + TIMEO 

@3,0 SAYUline 
? 

? 



VIA 



@ 15,5 SAY "Enter invoice number (0 if none) :"; 

GET Search PICT "9999" 

READ 

jx £*J} <, ^Wl o-^fUlj ( Sales.dbf ) cU-JI oiL. ^ ^ ^ 
iJi*. s*> ^ .( jj^l Li* Jlioj ill> ^i ) f.i *iT ... t l *I>jI jJJI Ij>iLUI jj, 

: SJUI jjkJI J^» &» dJi (^jj ( Howmany ) 

IF Search > 

USE Sales INDEX Sales 

* Count records with that invoice number. 

COUNT FOR invoice_no = Search TO Howmany 

: SJUJI jt^kJI J^U ,>* 

DO CASE 

* If invoice not found , warn user. 

CASE Howmany = 

@ 24,1 SAY "No such invoice number" 
?CHR(7) 

1*3 aL-^ 3 «JjW ik«— " fjj "»**^ (.-As-il fyu ^ o^U-JI JL* obL, 
: JJUI jjkJI JA> ^ dJi ^ ,4,^-J J^-JI II* Jl V UJJI ^ 

CASE Homany > 

* If several records have this invoice 

* — number , dispaly them and get the 

* - - -required record number 



m 



IFHowmany > 1 
@5,1 CLEAR 

? "RecNo Part # Qty Price Clerk" 
?? " Customer Date" 
7 

LIST FOR Livoice_no = Search Part_no , ; 
Qty, Price , Clerk, Customer , Date 
? 

INPUT "Edit which record:" TO RecNo 
GOTO RecNo 

Li* Jl ijUjJI ^J JUol pi tfUl %jj3\iil ^ Jb-lj J*^ JL* ^ 1*1 

ELSE 

LOCATE FOR Invoice_no = Search 

ENDIF 

J ia^l 2JL*VI L-SJIj J-^Ml .J»JI (Jj j^>3 ^ JUI .j^JI yij 

: 3JLJI jjk-JI J&> ,>- ^Ji (^y .dUi a*. J^fcJI J* jLjSI ;£-, <>> 

01d_Part = Part_no 
01d_Qty = Qty 

i-fc, Mjicl ( Deleted ) s^lltl ^jcj. .Luj ^ JUI <>*JI ^j 

@ 5,0 CLEAR 
Deleted = " " 
@7,1 SAY "Invoice Number" GET Invoiceno 



TV- 



juUjfN JUjtm±a jfAijt 



@ 7,44 SAY "Date" GET Date PICT "99/99/99" 
@ 10,1 SAY "Part Number" GET Partjio ; 

PICT "!!!!!" 
® 12,1 SAY "Clerk" GET Clerk 
@ 12,40 SAY "Customer" GET Customer 
@ 15,1 SAY "Qauntity" GET Qty 
@ 15,20 SAY "Selling price" GET Price 
@ 24,1 SAY "Delete this record? (Y/N)" GET ; 

Deleted PICT"!" 
READ 

*«- r Ji>a-il yitj ( Posted ) *L>jj fj jJ J*uJI ili" lili . f .Ui-il 

(O. ^ ( DELETE ) jM\ iL-l^ £-JU .j^ ^ ( Deleted = "Y" ) 

.jl>I^ ( No_Dels ) lf*-~* tjjJJall c/iU-JI ajlc oUj 

trvfiJI oiJL.j ( Master ) (^--1^1 «-Uil £i* iiUi juu g-li«JI rJ JL; ^ 
I^Jjlc. j3\ L-5JI ZiUlj **w— w^Jill Jj^-JI II* ^ ^«JJ o ^UJI 

DO CASE 

* If transaction to be deleted , 

* delete it and add its quantity 

* back to the Master file. 

CASE Posted .AND. Deleted = "Y" 

DELETE 

No_Dels = NoDels + 1 

USE Master INDEX Master 

SEEK 01d_Part 

IFFOUNDO 

REPLACE Qty WITH Qty + 01d_Qty 

ENDIF 



YVN 



,_ii«JI i-J' o^ JJUJI Jjb ^ .^1 ; jjJ; ij li^- j^ y^ j^, 
^ ( Master ) ^-^Jl oUI ^i u*D o3 .^1 IJ^ i^uji ( Quantity ) 
fJ jb JJUj .^ US' a-3, JU-il w li- ^ui ^l^| i^ J& ^ 

^ .Jj^JI .^»JI ^ tOi-JI ^J" ^ l^^aij ( OId_Part ) ^aiJI .^jJI 

CASE Posted .AND. Partno # 01d_Part 
New_Qty = Qty 
NewPart = Partno 
USE Master INDEX Master 
SEEK 01d_Part 
IF FOUND0 

REPLACE Qty WITH Qty + OId_Qty 
ENDIF 

i~£JI f j^JU Jjuu L-j_Lt ^j iilLJI UUJI gJLu JUI «^JIj 
Jjj*i ^.li^JI (.ji iJUJI »I* ,y ..^J| ^ Jjjuj jji Jiii ( Quantity ) 
&* i^jill LuJUl j^iu dJij ( Master ) ^,--^1 uilll ^ .j*JI la* L-S" 

.(DIFF ) jjcll ^ JyUI II* Cfi} iC J C JS£-A\ UtfJjLft ^III iJUJL^I i-SUI 

■j^-Jjl OUI ^i Sa^ll ZJUJI i^XII ^ ( DIFF ) Jji\ II* c > ^ ^ 

: SJU1 j^I J** ^ ,-Ui ^ 

CASE Posted .AND. Qty # OId_Qty 

Diff = Qty - 01d_Qty 

USE Master INDEX Master 

SEEK 01d_Part 

IF FOUND0 

REPLACE Qty WITH Qty - Diff 

ENDIF 
ENDCASE(adjustments after editing) 

YVY 



.ubljJI j^**a £«btf 



ENDCASE(Howmany > 0) 
ENDIF(Search > 0) 
ENDDO(while still editing) 

u)U» cotf li| U *i>J (No_Dels) ^1 jLi^I ^ JUI «j*JI ^j 
w Lf»v~-» <- , >U»-« £>%*-* JL* cjLS" lili .V »l L^w-i «_»jiL-* o}L*— . 
.(Sales.dbf) cU-il ^L. ^ Lil#; l«~-«. ,y (PACK) ^\l r b»£j 

: JLJUI j>-JI J5U ,>. dUS ^ 

IF NO_Dels > 

@ 5,0 CLEAR 

? "Deleting unwanted records from the sales file.." 

USE Sales INDEX Sales 

PACK 
ENDIF 

oU-JI ^.U* JJ ii^Jlj oUil J5UI ^ ^.U^l ol^ ^j 

.( SMenu.prg ) 

( NewEd.prg ) AiU>>l .jl- £**-£ £.U>. r - \v 

.{ r - W ) JSLiJI >;! .liUVI 



New Stock Syst em Menu 02/20/90 os:30:45 

( r - w ) j£i 
vvr 



jLl^VI 3jU>{ o^U- J^jucu f j^uU«JJ ^*w jAJI g-.li^JI Ji« £*l^JI II*j 
o^jjucJI «Jub Jj. « Lb ( Master ) ^^--ijJI Olll ^axs ^ C^u IflU-aj j~- ^1 
^.lijjl ^c *~*1h ,y <Jk±Si ybj .( Posted ) LfL>j3 j~- j5 cdU-JI cjU" lil 
JJi>j ( Cost ) oLl-JI jju- JJ» JjJU3 Jl Ij-UJI ^j *jl& oUi~ ju£J, J-LJI 
.j^JI ^3, (.jlJ^--, g-^li^l oi ^ -( Qty ) 3L-&I Ji> Jl iiL^L ( On_Order ) 
ijjjUJI ^j ^-Jj ( NewStock.dbf ) oLi.71 o»U ^i v^' «-*^*JI 0^ •^? JI ^ 

: iJlxJI j^LJI ^ £-*1<jJI uj^i) .oU-JI <JL« Jl* 

***************** NewEdit or? 

* Edit the NewStock File and update Master. 

* Called from NMenu.prg. 

* Set up memory variables. 
No_Dels = 

Search = "1" 

* Get part number for data to edit. 

DO WHILE Search # "0" 

Use NewStock INDEX NewStock 
CLEAR 

@ 2,1 SAY "Edit NewStock Transactions" 
@ 2,60 SAY DTOC(T_Date) + " " + TIME() 
@3,0 SAYUline 
7 

ACCEPT "Enter part number to edit (0 if none)" TO Search 
Search = UPPER(Search) 

* If user did not request exit, continue. 

IF Search # "0" 

* - - Count the records with that part number 

SEEK Search 

COUNT WHILE Partjio = Search TO Howmany 

DO CASE 

* If part not found , warn user. 

YVt 



jubl^JI tijh>l £*bjf 



CASE Howmany = 

? " No such part number" 
? CHR(7) 

* — If part number found , proceed. 
CASE Howmany > 

* - - If several records have that part 

* - - number , dispaly them and get the 

* - - required record 
IF Howmany > 1 
CLEAR 

SEEK Search 

LIST WHILE Partjio = Search Part_no , ; 

Qty, Cost, Date, Vendor 
? 

INPUT "Edit which record(enter ; 

record number)?" TO RecNo 

GOTO RecNo 
ELSE 

SEEK Search 

RecNo = RECNOO 
ENDIF(Howmany > 1) 

* Store original field values to variables 
01d_Part = Part_no 

01d_Qty = Qty 

01d_Cost = Cost 

*- - Display edit screen and allow edit. 

CLEAR 

Deleted = " " 

@1,1 SAY "Edit NewStock Transaction" 

@3,1 SAY "Part Number" ; 



YVo 



GET Part_no PICT "!!!!!" 
@ 5,1 SAY "Quantity" GET Qty 
@ 5,20 SAY "Purchase Price" GET Cost 
@ 7,1 SAY "Date" GET Date PICT "99/99/99" 
@ 7,15 SAY "Vendor" GET Vendor 
@ 9,2 SAY "Delete this record? (Y/N)" ; 

GET Deleted PICT"!" 
READ 

* - After editing , adjust Master file. 

* - - First handle change in cost. 
IF Cost # 01d_Cost 

New_Part = Partno 
New_Cost = Cost 
USE Mater INDEX Master 
SEEK New_Part 
IFFOUND0 

REPLACE Cost WITH New_Cost 
USE NewStock INDEX NewStock 
GOTO RecNo 
ENDIF 
ENDIF (Cost # 01d_Cost) 
DO CASE 

* if new stock transaction to 

* be deleted, subtract its 

* quantity from the Master 

* file and add it to the 

* Onorder field. 

CASE Posted .AND. Deleted = "Y" 
DELETE 

No_Dels = No_Dels + 1 
USE Master INDEX Master 
SEEK01d_Part 



IF FOUND() 

REPLACE Qty WITH Qty + 01d_Qty 
REPLACE On_order WITH On_order ; 
+ 01d_Qty 

ENDIF 

* - - If Part number changed, 

* - - subtract quantity from the old 

* - - part number, and add to the 

* - - new . Do the opposit for the 

* - - On_order field. 

CASE Posted .AND. Partjio # 01d_Part 

NewQty = Qty 

NewPart = Part_no 

USE Master INDEX Master 

SEEK 01d_Part 

IFFOUNDO 

REPLACE Qty WITH Qty - 01d_Qty 
REPLACE On_order WITH On_order ; 
+ 01d_Qty 

ENDIF 

SEEK New J>art 

IF FOUNDO 

REPLACE Qty WITH Qty + New_Qty 
REPLACE On_order WITH Onorder; 
- New_Qty 

ENDIF 

* - - If user just changed the 

* - - quantity , adjust the 

* - - Master file quantity. 

CASE Posted .AND. Qty # OldQty 
Diff = Qty - 01d_Qty 
USE Master INDEX Master 

rvv 



-bI^kN A^*a3 pAijf 



SEEK 01d_Part 
IF FOUNDO 

REPLACE Qty WITH Qty + Diff 
REPLACE On_order WITH ; 
On_order - Diff 
ENDIF 
ENDCASE 
ENDCASE 
ENDIF(Search # 0). 
ENDDO(while Search # 0) 

* If records have been deleted , Pack the New 

* Stock data file. 

IF NO_Dels > 

CLEAR 

? "Deleting unwanted records from NewStock file" 

USE NewStock INDEX NewStock 

PACK 
ENDIF 

* Done , Return to NewStock Menu. 

CLOSE DATABASES 
RETURN 

ol Jb>*j j&j L.LJ ^Ul ^-Li^JI JJU i/UJI ol^JtL. .LUL Ijlj £-b*JL, 
*&J\ ^ &* ^ o^- iS^JI ft dJh 'v>j> j*zJ »jLiil ^ ( Search ) ^1 

o JjS * Jl f j^o-il aijb ^JJI *y*)\ (Jj J^ J ( UPPER ) UIjJI f J^-J JJiij 

No_Dels = 
Search = "1" 



YVA 



* Get part number for data to edit. 

DO WHILE Search # "0" 

Use NewStock INDEX NewStock 

CLEAR 

@ 2,1 SAY "Edit NewStock Transactions" 

@ 2,60 SAY DTOC(T_Date) + " " + TIMEO 

@ 3,0 SAY Uline 
? 

ACCEPT "Enter part number to edit(0 if none)" TO ; 

Search 

Search = UPPER(Search) 

li* If) J^\ Ci}U-JI iJLfc j-a>j .J&Z~1I Jj-il ^JJI .JmJI |Jj yc lisxJI pX; ^5 

: JJUI jjkJI JAi ^ aii ^ .( Howmany ) jJci\ Ji aJ*JI Li* oi^J (-V 

IF Search # "0" 

* Count the records with that part number 

SEEK Search 

COUNT WHILE Partno = Search TO Howmany 

DO CASE 

* If part not found , warn user. 

CASE Howmany = 
? " No such part number" 
? CHR(7) 

»i* oLjLj jfjj- pZj LjjJLLlI .>*JI pj, tr jj Lfl o}L*-. »JLc JU* oLi' lijj 

IF Howmany > 1 

YV^ 



jxblrfJI iijtii-m g*bjj 



CLEAR 

SEEK Search 

LIST WHILE Partjio = Search Part_no , ; 

Qty, Cost, Date, Vendor 

? 

INPUT "Edit which record(enter record number) ?" TO RecNo 
GOTO RecNo 

Jj*-JI Iji* Jl ijUJJI ^j <^JJA\ .jwJI jjj Jx ^j^w Jb-lj Jj«-» JL* jlS" lilj 
: SJUJI j>-JI J*> ,>. dUi ^ ( RecNo ) s/IAJI j^j> J J*wJI ^ oe>«j 

ELSE 

SEEK Search 

RecNo = RECNOO 
ENDIF(Howmany > 1) 

* 

^ jJLjLO i-Jjiiall J-k~>JI Jj-*> l- jaJu oL j -l*." ,>j>«j (^j JUI «jJ*J' ^Jj 

^ dJi *^jj .,^—-5^1 ulUI JjJ-oj j^j dJi juu l^aL&zJ ^51^ (J i>. J^fli cjL«*z« 

: 3UUI jjkJI Jili. 

old_part = part_no 
old_Qty = Qty 
old_Cost = Cost 

*^*j ^ .j^t...»U iiU»yl Jj»«-, oLjLj ^^ju g-^lj^JI f>*j JL^I «>>" ^j 
v— =■ ( NewStock.dbf ) Xs\*z>H\ ,_iJL> &> Jj^-JI £-~. jl LjJIJI JjJ^JI J^us 

: UUI jjkJI J!A> ,>- dUi pi, .S>UJI 

CLEAR 

Deleted = " " 

@ 1 , 1 SAY "Edit NewStock Transaction" 

@ 3,1 SAY "Part Number" GET Part_no PICT "!!!!!" 

@5,1 SAY "Quantity" GET Qty 



YA< 



■aibltfjM hjitii-O £jL>jf 



@ 5,20 SAY "Purchase Price" GET Cost 

@ 7,1 SAY "Date" GET Date PICT "99/99/99" 

@ 7,15 SAY "Vendor" GET Vendor 

@ 9,2 SAY "Delete this record? (Y/N)" GET Deleted PICT "!" 

READ 

( Master.dbf ) cr - s i^l oiAll J> oULJI J^i, g-U^JI fJ Ju JUI .>jJI ^ij 
ulS" lili .( NewStock.dbf ) *JU»VI ol. J> LjLjus pj ^/Jl oULJI Jj. .L, 

j>-JI J^> ,>- dUij .^--i^l ,-illl ^ *LJU3 pi. ( Cost ) .J»JI y^ JJU. f J^wL-ll 

: 3JUI 

IF Cost # 01d_Cost 
NewPart = Partno 
New_Cost = Cost 
USE Mater INDEX Master 
SEEKNew_Part 
IF FOUND0 

REPLACE Cost WITH New_Cost 

USE NewStock INDEX NewStock 

GOTO RecNo 
ENDIF 
ENDIF(Cost # 01d_Cost) 

J^l li» J.—* f jikiJll vJk, Ujll* ^>i iJU jLiil ^ JUI .^Jl ^i, 
^ ( DELETE ) s?i\ f \^cJu j^JLI .jj^Ki, f yL £*U^JI op ( Deleted = "Y" ) 

otf lip j^uJi u» a* d^i ^ .*, ^uji ^^iiij j^-jjji alii £& ^ 

jjJ»-JI J*> ^ dJi_, .( On order ) .-JUI c^j 5-JUI Jl i~£JI »1* iiU»l 

: 3JUI 

DO CASE 

CASE Posted .AND. Deleted = "Y" 



YM 



Ill ■ ^^H^*^"™ ff^ mm JT 



DELETE 

No_Dels = No_Dels + 1 

USE Master INDEX Master 

SEEK OW_Part 

IF FOUNDO 

REPLACE Qty WITH Qty - 01d_Qty 
REPLACE On_order WITH ; 
On_order + 01d_Qty 

ENDIF 



J^* ^jJI «^»JI j^j J-UjCj ^JLJOmJI fji Ujllc ^Jji-I *JU gJLw JUI «>>Jlj 

JjL-JI <>nJI ^-o oUall Z— £-11 mm «_oLi^JI .yu DUJI »1* ^j .aJLc oL2»VI 
dJi ^ UWI ceo L~£JI Jl *~£i\ d* liUI ^ US' .jbJbJI .j*JI Jl l^iU^ 

: 2JUI jjkJI Jfc- ,>- 

CASE Posted .AND. Part_no # OldPart 
NewQty = Qty 
New_Part = Part_no 
USE Master INDEX Master 
SEEK 01d_Part 

IF FOUNDO 

REPLACE Qty WITH Qty - 01d_Qty 

REPLACE On_order WITH On_order + 01d_Qty 
ENDIF 
SEEK New_Part 

IF FOUNDO 

REPLACE Qty WITH Qty - NewQty 

REPLACE On_order WITH On_order - New_Qty 
ENDIF 

j*- ^1 5-*5UI JiJio f d*xJU f >b L.JLX S^iMl i)U)l ^JU. JUI «j*JIj 



YAY 



: JUUII iJl* £*j3 IJUI jjkJ\j .JiJucJI juu Ijujujl ij^Jlj JjVl 

CASE Posted .AND. Qty # 01d_Qty 

Diff = Qty - 01d_Qty 

USE Master INDEX Master 

SEEK 01d_Part 

IF FOUNDO 

REPLACE Qty WITH Qty + Diff 
REPLACE On_order WITH On_order - Diff 

ENDIF 
ENDCASE 
ENDCASE 
ENDIF(Search#0) 
ENDDO(while Search # 0) 

j>-JIj .(NMenu.prg) liU'VI g-b* JJ UyJ\j oliUI J5UJ ^ ^ .(PACK) 

: JJLuJI (JUb £2>j3 IJLJI 

IFNO_Dels> 

CLEAR 

? "Deleting unwanted records from the NewStock file" 

USE NewStock INDEX NewStock 

PACK 
ENDIF 

CLOSE DATABASES 
RETURN 



YAf 




giyi *jaJI 




dUafl 



jAt c^UJI JtxUI 



*ar 



YAV 



tfifl ( Accounts Receivable ) «%-jJI oU— > j.Lfeu f . . * .di «jj*JI II* ^ ^ 
( Customer ) J~*JI ^-j &£c fUtJI II* ,y ^ .LJT j-3l>UI S*U» <J> ^Hu 
( Current balance ) 3JUJI iijl^ll JJ *iU»VL J-oii-. obU U«.l3 ijL. ,y -gI^jlc, 
,y ( Payments ) aL-JI oULi ^i/* 5 ri ^ •( Age * balances ) iiLJI objl^llj 
U*13 uiL* ,y ( Charges ) o^nJI obU ,>j^rf ^ Li" .J-*iL« obL. »jlcIj u.«l« 

.SftUI cUUI «I* ^ JwJL g-bjJI f >Lu >l oUL, 

oUJil ^* J-.LdJ »jux> JJiU,j iijj«-« g-«!j-JI -iaia^U £~3 flJ*J' IJL* i-ljij 
oljL#JI oUJU f IjiaJ i-lji Lfl^> j^ ^ Li" .( Relational Databases ) iL-jJil 
.Ifj.ltf' oLjj g-UJI iAX J-4-j ^J» ( Procedure Files ) oU^I ji 

AJLSLiil (JjjjC N - \A 

Lfl^U- £_« -jo ^^^rf tJLcLi .Lwl j_* *^LuJI oLL» .Uu £_• oJLfJI 
iljuJI 5J>J ( Monthly ) jj+iJl OJ^ll J-*-Jj .5L-JI cLU ijoLi. 
yL* J£J ( Charges Transactions ) ui^-JI iS>j ( Payments Transactions ) 
iijl^ll £j»jj v_>L-> J£J ( Invoices ) ^-jI^j jIj-*»L f UlJI fJ JLy ( Account ) 
p ^1 IJL* J)U j^ J iL- **> Ji"j ^dU ( Starting Balance ) *-slu#l 
Ij-aii-. j-jjLc f UiJI ^j., LJ* .( Current Balance ) iJL^JI S-JjIjJl 
Jfc. DjI^JJ ^jjlB LJ y^ US' .J^ JSU ^^Jl J,UJU ( Summary Reports ) 

.iLU oliLu ^i J**^ J^jJI jJc-j ^ J-*jJI Jjjilj ^a ik-J 

^ jOjoJU J^Lu J-4-j ^i i^^l^ll ^Ijjai r LU^L iiUtf £-U>JI f yLy 

. f lkJI 

oLLJi SAfrU JiLA juam Y - NA 

^liJIj J~*JI IV ^.LAl oliLJI J5" J* ^^ ^jj| ( Customer ) J--JI cbU 
iij^-JI .Ij^Vlj Oj-JI ^l^j oliU b~*=-L jiM ( Charges ) o^JI ii> «JU 
tiij-j ol^-JI obU ,^^-ii; ^111 ( Payments ) aIjuJI SS> ^iL. ^JUIj UjUJj 



,Ualil 



.^i\jil\ 



( N - 



( Customer.dbf ) J^l c»bL- v-iJu \ - r - Na 

\A ) j£i)L J^-^jll J^fcJI &. J^l oliL; vJ»U Clj&L; 



Field 


Field Name 

ACCOUNT_NO 


Type 
Numeric 


Width 

4 


Dec [ 


1 







2 


CUST_NAME 


Character 


25 






3 


ADDRESS 


Character 


25 






4 


PHONE 


Character 


13 






5 


LAST_UPDAT 


Date 


8 






6 


START_BAL 


Numeric 


8 


2 




7 


CHG_CURR 


Numeric 


8 


2 




8 


PAY_CURR 


Numeric 


8 


2 




9 


BAL_30 


Numeric 


8 


2 




10 


BAL_30 


Numeric 


8 


2 




11 


BAL_90 


Numeric 


8 


2 




12 


BAL_90 , PLUS 


Numeric 


8 


2 




13 


TERMS 


Character 


20 



















( \ - \A ) JSLi 

(J, Ji> _,j» U) j^jj Ji>Jlj .Li^ Vo ^j> cj^i tAr" J-*> >*>j O'j^I 
Ji. jJ» (0) pSj Ji-Jlj -lJr>. (W) ^ ^5CJ J>j> JJ> jJ>j O^uLJI 

(Jj-aJI *$">> Jj> jj> (V) |*5j JiJIj -CxiA*- iff^Ji f^j' ^S 3 ^ -8 <Jj^-° 

2LJUJI iljuJI Si> Ji> j* (A) ^3, Ji»Jlj .( Current Charges ) XJUJI 
Ji*Jlj .^i J^i iijljil Ji> jj> (M ,Jj J^JIj •( Current Payment ) 

JJbJIj .^f LwJ J*. Syljll. JJU _^ (\Y) jjj JfcJIj .j^fi Zftb j*» 

.(Credit) w jJI J*, j* (\f) ^ 



yv 



,lfcjll 



.IflUII oiail it-j ^ ( Account_No ) v 1 -^ 1 f 5 ; iP* f*^-i> 
X-^Jj .JJ*JI Li* J* .L, S£UI oliUI *-,> p ji t ^u-LJI ,yj ttUJLT, 
iioJl ?j-i-. &* J ul >-" ^^ r=i ( Cnstomer.dbf ) J-~*JI UU 

.( Dot Prompt ) 

INDEX ON Account_No TO Cust_No 

J_;»*JI ^-.1 J-J> J_t .Lj jJ-T ,^p .LiJl j-S-j d-m -*—k 
J^*ll pj J^ J> ( UPPER ) UIjJI r b*=J $£-, •( Cust_name ) 
J^jJI ^J ,>* £**JI J-f-^J ( Uppercase ) ij-£ .Jjy* JI - uvfiJI ^i 
^^jiil U* tLLVVj •• J=r S' «Jjj> jl »j~«-«' *-Jjj*y p-"V' «J«i-Jll J*il »lj— i 
.( Dot Prompt ) iUaJI ij-i* ,>* JUII JLJI ZA& ^ 

INDEX ON UPPER(Cust_name) TO Cust_Name 

( Charges.dbf ) J»j-JI *S>. oUL. r - y - na 

^ Ln^tjl\ JjJbJI ,>-» ( Charges.dbf ) .J^JI Ji>- tiJL* ujicj 
i^-vi (Accountno) i_»U*JI ^j Ji> ji -kOly .( V - \A ) JSLUI 
JJjj .( Width ) j3j*i\ ^Jdj ( Type ) g>JI ^j ^Vl ,^Jjj oUll ,^j 
JSWI oUUI J*J ( Key Field ) c Ui^ f a*iw o^-. ^JJI JJfcJI *A 

ZjL£j dUij .i-jL^JI |^3j Ji> Jx. .Lb >_iUI lift ^j^i .Li;j .♦iy 

.( Dot Prompt ) ikLil ' tj ^ ^ Jci\ >-JI 

INDEX ON Account_No TO ChrgNo 



X\\ 



,Uai)l 











. 


Field 


Field Name 


Type Width 


Dec 




^j^g^ggg^gj^f 


*i^&ffiS^il^ 


SkjSfc ■> iiJ-i^wmiB 




1 


ACCOUNT_NO 


Numeric 


4 







2 


INVOICE_NO 


Numeric 


6 







3 


PART_NO 


Character 


5 






4 


QTY 


Numeric 


7 


2 




5 


UNIT_PRICE 


Numeric 


9 


2 




6 


AMOUNT 


Numeric 


9- 


2 




7 


DATE 


Date 


8 






8 


DESCRIPT 


Character - 


20 






9 


BILLED 


Logical 


1 









( v - ^A ) j£i 




(Payments.dbf ) Jj-JI u»Ju f - y - Na 

^ £>ws>ll JyLJI o- 4 *^i^ r^ ( Payments.dbf ) al-i-JI <-*L> Ui 

.( r - \A ) JSLdl 

pjj ji- ( r ) pjj jj^JIj . *<-*" ^ jjl^ M ) pj JJ»JIj 
(jt, jje^jIj . u^jdi usui a-sJi j*> jjl^ ( r ) (jj j*Jij . .ilaji 
.zjlji a-»j J£* jiu ( o ) ^ JItJIj « ,\jU\ j^b ja> ji- ( t ) 
.•* f I aL^-jj ^ si ^jJI jir isi t*ji jfc* J*» y ( i ) f3j J^b 



w 



,UUH 



m 



tf'~WmWin 



Field 



1 
2 
3 
4 
5 
6 



tJ&mJi^L^. ii*.! 



Field Name 



»y. -....:■ -..,. --.ma 



ACCOUNT_NO 

CHECKJSTO 

AMOUNT 

DATE 

DESCRIPT 

POSTED 



Type 



Numeric 

Character 

Numeric 

Date 

Character 

Logical 



Width 



"-S?IaSH 



4 
5 
9 
8 
30 
1 



Dec 




2 



( r - u ) jsl> 



&> JUI >JI il^ cilll IJLfJ ^j&\ >JL> .Liil ^ 

: jfttf ( Dot Prompt ) 



INDEX ON Custjio TO PayNo 

v^UI oLUI -ki* r - \a 

..*-JI JI UJUjIj jjlyUI ^ ^ ^Jl I^ ^j .j^UI J*> jLyjJIj j^l 
T LkJbJUJ pj oUL-> js- iJLL, oULj JI fj>J\ .a^tJil jlji _>J liL« ,^£Jj 

jjji iLjisJI »i* jli*5j .UjbJL-3 Jyji*j ilj-JI jl .J^alJ IS 'j> J/ £— . < -\ 
V J! t^' <J^ * J-ii " f 1 * L *«*! Cr^J o^r*" J-* i-i^ *>' — • 

iiLJI oliLJL Jii^j Lpi i^UI »o* Joilij .Ujuuj *3 ,^ill *5>JI 



yw 



/I&1» 



.^ilfrt f?> Jl ( Payment ) jLUIj ( Charges ) vJ^-JI JL* 
Jl ^ap L^jt SJLjJkll »i» jjLjLij .( Historical file ) t^^b •_*!• 

oULJI g. j i .'KJ J»Ul»^M £_« L . ; ..J ^Jwt JbjjlJIj iJj^aJI lytLj J>Uz>^M 

y»j dJIDI JLi^l f ljiw-l pi-. **^i t/jUJI *y*uJ\ oLL-> f lk JlU ,>-, 

.ZJL^l. ^Ijjl jl yjoj* J> L^ijLJI <-^ll '•*■» :*>* Cr^*i> ( Historical File ) 
( Structure) ^iill JSL* ^i ^ ( Charges.dbf ) Oj-JI JUL ,>u,b Jib .LuV, 
^ ^Ull 1>i >~JI LL^ liUij .*L. ( BillHist.dbf ) «-- s ^ juo* ^L. Jl 

.( Dot Prompt ) U*£JI • J ~L. 

USE Charges 

COPY STRUCTURE TO BillHist 

C^jkuJ\ VcX ^ ( Payments ) aL-JI uill JL-JL J3U-. ^b ciL. .LLiVj 

USE Payments 

COPY STRUCTURE TO PayHist 

J| L^lk- j-i jc-^3 jl\ o^-JI JX 3-JLT ^Liul c^-, JJUJI .l>>ttl ^j 

«}Uc iiU»L Iaa>I ^ iLai. - ^. g-ol^j «JLft ,>• «%jJI oLl— » £-»^ <k&^ 
J^L, gljb .5LJI J>1 obL, J^ ^UJIj jJljillj ^LUI ULk.^lillj .** 



YU 



«***a 



.{ t - \A ) JiLiJI o- e*^ e- 13 ^ ( Hierarchical ) ^^1 J^-Jlj 
g-.UjJI juto it,-, isL>J ;jui> SJL-j f bic~\ ZJUI J>Vl ,y ,*--, iaLUJ, .oliLi 



ol>Ja^JI wiJLa .1. 



I ^ i_L-yJI »JUAj .L-oJLJw-ll OULUI Jj_fr J-JL*jj 

. JUI J-aiil <y l**^ ,^-j ( Procedure File ) 



Accounts Receivable 



1 
ask 



1. Add new customers 

2. Enter new charges 

3. Enter payments/adjustments 

4. Print reports ; 

5. Edit data >:; 

6. Do monthly posting 
7 Exit 




{ i - \A ) j£i 



VAo 



juIjU&jMU 






Y^v 



xJ^JIaJiL. 



*J*~\jj g-«I^JI oL&J 2LoJ£ll J-iL-jJI jjl*! £jJ« fji~* J— oiJI IJLft ^ 
cii^iJI oliL- f u*cU ^j ^>Vl ( DBase ) *UU ^1^ jl ( DBase III+ ) 
^ *L-,jJI »jji ^Ij^cJ ^ .j^., .( Parameters ) o^UUUj ( Procedure Files ) 

.( A/R ) .XuJI oLL-» ^.l:^ 

JS" r hicl ,>SLj, ( Routines ) >^J^> £-1^ Jx. jj^ tjL« ^* ol^liiJI «JJL»j 
^i*. *;l ^i *JI I>UJI jllc *JUjcuIj l^^-J^I g-^j-JI ,>» ^Ui Iju. ^ «-»L^ 
^a JS\ joi j5wV ,>SJj ol^bi- oliL. Ijl*. ,Li:l ^-jj .( Library ) £-.1^ JLiSL. 
wJ*s l^i Li" UiJ^ i*^.j g— fj-JI ilxS" Jjf-J Jl ^iJ3 ^j .C3J\ ,jJl, Jt tiL. 
yJL, jV JJij .J-jSL'l ^-I^JI ,jj j^k; ^1 *>^iil olilll jju. SjLj ilSjL. J_c 

it^^- &> ( o ) ^j, v l£JI ,y (SET PROCEDURE TO ) yH\ Jl £>_,{ 

Li*, .g^l^ i£Ai Je. jijiKj j>Ij oljl»j» uiL. .XjJI oLL-> g-bjj a- »aiii-j 
SjfUJI J *L^ ^ ( SET PROCEDURE TO ) ^i f L*i-L ooi jul* ^Uil 
i>U JL* jl-^V ^ -Jib ^J^JI J tr iij ift^ J| ^y, ij^j .( ram ) LSjII 

.3/IJJI Jl ^1 ^ ^yi J* Ji J| Lib 

r U ^U^ Jl aL^c ^^ v^ill JJ-b i>?J- . ( Procedure ) g-U^ JSj 
^Vl f Lic-,L JJi ^ .^>i ^|^ ^i ^ ^Lic-I o-SL^ ( General ) 
w-LJ £-b^JI Jl i^** o^L^ JU-il Jl ^ ^.Vl Li*, .( PARAMETERS ) 

C- ;^a~ll ( Procedures ) *»L3I g-I^JI i^lji ju* ^Lo;! ^ IJu.j .iijuLL. 

• cjLajJI OuL> KJtUjJ 



v^^ 



AljLuitt -3.1U, 



( Title ) jlj ^Jf ^-Ls^, y - \* 

. f jJo— U L***^ pi, iiU ^1 ^ g-.UjJI IA* f lj^w-l ^SLi, .ZiLiJI j»j^ 

JJij ( Tide ) g-aU^JI p-j *JL, ( PROCEDURE ) ^% ^U^JI II* Luj, 
^1 U, ( PARAMETERS ) ^1 3.L* ^ ^jUI >J| ^i/j^l jLi\ ^ 
fJ i JUI jkJIj .^b^JI «UxU jll* U^Ij^J ^ oj« ^Ul o}L.Ull ji J-.UI 
'**&, (*k JW\ J^Jij .( Title ) jUiJI Z,L£, fJ i JUI >Jlj .LiLiJI e — < 
i^LUI ^^ ^^ Jw- ^ fJ ju JUI jkJIj .JUJI cJjJIj JUJI f ^JI j^b 
^ -u^ j-- j5 j^ ( Uline ) ^-idl ji U»>X. £- ( Uline ) jJcX\ ^ *^>j, 
o^j a*^ j~- ^iJi ^b^Ji j^L-j .jjuai g^b^. yj pj US' ^ Ji ^.b^i 

PROCEDURE Title 
PARAMETERS Title 

* Display screen title 

CLEAR 

@2,1 SAY Title 

@ 2,60 SAY DTOC(DATE0) + " " + TIMEO 

@3,0 SAY Uline 

? 

? 
RETURN 

i\jj LoJLLfr jj-^JjJI g-ob^JI jji TJaSj Jl ^ 4jl ZJLjJI lift (^i ^^Jtll « Lr iJlj 

*3t» (^-vJI J»*Jlj CjjJIj JUJI »jJI ^jjIjj jljJjJI *.:... ^t.<i j.Ji».T,...U iili ji^ 

^k ajij .^ur iijii jij^Ji fj e-^i u» p-i aJ- ( do ) ^\ *a* js* 

: ^JU 
Do Title WITH "Accounts Receivable Main Menu" 



^ I4J LJUI oUL-JI oi ( DBase III+ ) ^.L^ *-a ( WITH ) 3-tfj 
Li* Juiii xjj JJjJ, .( Procedure ) ^yJI £-»lo*JI ,y ^4*ir«3 i3~- i>JI o^L-Ull 
0I>jJI Jjux-w *jli ( PARAMETERS ) ,-Ml J| g-li^JI J^jj ^yJI g-U^JI 
JJJJ .( "Account Receivable Main Menu" ) y>j *l\>i\ fS ^Ul al^jJL ( Title ) 

Accounts Receivable Main Menu 02/20/90 12:50:30 



g-* 1 ^ ( Procedure Files ) oljlwJI oliL. ,y U>i r .U; ,„•?, ^1 ^.I^JI &* 

II*j .UaiJI li* ^ uJUdJ UJLU ww tfill J-uJIj 4-i ^ ^jjJI LLiJI - .--,11 

PROCEDURE Error 
PARAMETERS Message 

* Display error message. 

@ 20,0 CLEAR 

@ 20;3 SAY Message 

? CHR(7) 

WAIT "Press any key to try again" 
RETURN 

Cr .baj iiUJI jc— j f ^L, ( DO ) jA\ ILJ_* AiUuJ jul* £-1^1 II*, 
iJLy ^^ c yL ^ .liUJI J*, wj*^. obLJI Jk; ^SU oUij Ji-Y, ( 20 ) >-JI 
( Bell ) ^>*JI Jjll, US' ( DO ) ^\ £. l*JUo! ^ ^J| ( Message ) U^JI 

: JUI j-Vl Ite jLLt ^i .( Message ) 
DO Error WITH "No such customer number!" 



t'\ 



: iiUJI JjL,I jftl j»yu g-li^JI ui* 

No such customer number ! 
Press any key to try again 

JL&^-V {\zjw J J-c Jii^JI f jlJo-II ,>» >w, ( Bell ) ^jpll J-Jj US' 

j-**ii jwb ,>. ^jtodi ^.b* i - ^ 

.jmI^JJ ft^ _>*j .^LjJI oLl~> «-«b^ XLuiljj -jiivZ— II liJlill uO^JI >* II* 
j-«i J!A> j>-« idJi *^j .*a»w« J~-c- oULj ^ ti^vJI ,y a-5j jl J— -Jl («— J JLjO-I 

: jiW 4>lj 

DO GetCust WITH M_Cust_No,M_Cust_Name,M_Address,Exiting 

: jftl JJL; Jl jsji j*Vl Li*, 

.jujj jl J— -«JI *-| ^/vJ .jjtI.moU iili ^^t ^ 

.dUJb .Uji-VL fiUJI £-b*JI jLi-iy^ £j>JI f J^JU iljl lil -v 

J^ U-s»j-ftj *JLiii p JJJI (— <?Ij L^UJI w*L-«JI f L5ji ,>*. «£^<JI -r 

.iiLLlI 

^L-Jlj U»- ill— j J*,* fSj i>rj- ^ v 1 —* f*J J^M ^^ w* ~* 

.juili »j» SJjImIL »jg »" .,i.« ll 

aj^j a— lj J-*JI jjj oLkd £- .Ujo-VL ^UII ^L^JU ii^JI -0 
J^*JI ^ II* ji r JLk^JI jfei JJ LSLJI Jj> oULJI u* ^j 

. v ^Lkll 

^ Jj-j. dLWj .5LJI oLL-> £-b* ^ 1^ fj^s-i Jj- e^liy-JI U»j 

.J-aa.ll Li* I;Lp ,y jL-aiJlj *»j-i 



r-Y 



jdjfaLsJl jaUU 



ol>L»JI «JJL« «l ii[ - \<l 

.( Command file ) ^Iji <j«U ^i «Li;J XLjo ^JLu oljlwJI i_*L» «LiiJ ^ 
d» ,> -u*-/, aUI ^1 LUT ^ ( MODIFY COMMAND ) yti\ r L*^«L JJi, 
,>£- oljiiiJI dL.j .( Procedure Library 1 ) jUS-l >»j ( Proclibl.dbf ) 3JUJI 

.j-Ui.'VI j-. US' Jui £j.\j, i»b J* ^jXpw ( Proclibl ) .Jill jli 

P-l <JL ( PROCEDURE ) ^.VL \j^_ ( Procedure ) ^-s.^ ^-^ J^j 
( Parameters ) cO«Ull f LA=J ZJU ^j .( RETURN ) ^VL ^^Ly g-L^I 
^t\ >-J ;^U- JUI >-JI ^ ( PARAMETERS ) ^-Vl r LLkxJ ^ 

.( PROCEDURE ) 

.( ProcLibl ) odll ^Ijl ^^ UUI j^-Jlj 

*************** proclibl ore 
* General Procedure for the AR System 

* Display screen title. 

PROCEDURE Title 
PARAMETERS Title 

CLEAR 

@ 1,0 SAY Title 

@ 1,60 SAY DTOC(DATEO) + " " + TIMEO 

@2,0 SAYUline" 

? 

? 

RETURN 

* Display error message. 

PROCEDURE Error 
PARAMETERS Message 

\ ■ — 



@20,0 
CLEAR 

@ 20,3 SAY Message 
? CHR(7) 

WAIT "Press any key to try again" 
RETURN 

* Look up customer by number or name 

PROCEDURE GetCust 

PARAMETERS M_Cust_No, M_Name, M_Address , Exiting 

* - - Set up loop for validating customer number. 

* - - Enter customer number or customer name and 

* - - look for it. 
Valid = .F. 

DO WHILE .NOT. Valid 

* Get customer name or number 

Lookup = SPACE(20) 

@4,0 CLEAR 

@ 15,5 SAY "Enter customer number or name" GET Lookup 

@ 17,5 SAY "Press Return to exit" 

READ 

* If nothing entered , return "exiting" 

IF Lookup = " " 

Exiting = .T. 

RETURN 
ENDIF (Lookup is blank) 

* Lookup by name if name entered. 
IF ASC(Look up) > = 65 



f-i 



Lookup = UPPER(TRIM(Lookup) 

SET INDEX TO CustName, CustNo 

SET EXACT OFF 

SEEK Lookup 

* if name found 

IF FOUND() 

* Display customers with required 

* name 

M_Cust_No = Cust_No 

@5,0 CLEAR 

@ 6,0 SAY "Number Name Address" 
7 

DISPLAY OFF WHILE UPPER(Cust_Name) = ; 

Lookup CustNo , CustName, Address 
@ 22,2 SAY "Enter customer number" GET ; 

M_Cust_No PICTURE "9999" 
READ 

Lookup = STR(M_Cust_No , 4) 
ELSE(If name not found) 
DO Error WITH "Not found" 
ENDIF(name not found) 
ENDIF(name entered) 

* Lookup by customer number. 

IF VAL(Lookup) > 

M_Cust_No = Val(Lookup) 

SET INDEX TO CustNo, CustName 

SEEK M_Cust_No 

* If found, Continue, else ask again. 

IF FOUND0 

Valid = .T. 

M_Name = TRIM(Cust_Name) 



r-o 



M_Address = TRIM(Address) 
ELSE 

DO Error with "Not found" 
ENDIF 
ENDEF (number entered) 
ENDDO (while invalid entry) 
RETURN 

JJi pi, -Oiill \ifi gtt f jL Ct\Jai^\ U±A Ji-li £A\}y J\ J^*j J^j, J± 

^lil "teJ .k->j&H ^illl p-l S-l^ ,J ( SET PROCEDURE TO ) ,-Vl r LL*2-L 
: JLJI ^k-JI iUS" pi ( A/R ) .^Jl oLL-> ^b^ ^UJI ol>iJI OU 

SET PROCEDURE TO ProcLibl 

2j3>LI i^liJI. Jk ( ProcLibl ) OJill J_^»3 Jl ^a>_; ^.Vl Ijl* JLiSj 
Lf ( DO ) j?l\ f IJL^-L ,-ilil li* Jib £^ ^i JidLi ^ JULj ( RAM ) 

L5" 1( CLOSE PROCEDURE ) Ji\ VcS ^ c >Oll ol>JJI ^iL. j^tT, 
«-o JjLJI oIjJikJI t_iL> J^Ltl Jl tji>j Li* u' «£*s> j»T oljiii utLo «i ,>£-,» 

( Parameters ) o^UUll JUJ v - U 



ol^iJI ^I^j Jl OX.U1I JU*I ^ ( PARAMETERS ) jJil f J 

£* l^jlif pi ^1 c£L*UTI Jl>al Jl ^ijj j*, .^Uu^l J-- LS" ( Procedures ) 

w-^j, v-3^JI {J J£j CSju>\A\ JL>il pi, .Uju ~Hj>j1\ £>\j**±\ ^J ( DO ) jJi\ 

LLlk. ^ jl y-w (■ DO ) ^.Vl jl* IfJUil ^ ^=11 o^L-UI jxfc ji ili>^L. 
g-LWI jLi *i\> ( PARAMETERS ) j-Vl Jbu L^L* pi ^dl oU*=ll iiJ 

.lk> ULuij ^'jj »-flji 



r-\ 



r Jiiw- ( GetArea ) *— I oL>i g-U^ .Lid JJU3 i-JUl j>k-JI ^U^» 

.( Area ) . ( Width ) . ( Length ) SJLJI JtfWI ol^JdU 

PROCEDURE GetArea 
PARAMETERS Length, Width, Area 

Area = Length * Width 
RETURN 

( Area ) i>Lilj ( 25 ) ^yJlj ( 20 ) J>)l JUol ^ £-b,JI U* J^j 

Area = 

DO GetArea WITH 20, 25, Area 

: j?i\ Utf" ^ ( Area ) *>Lil ,>& JI>JI jli*, 

?Area 

.( 500 ) *a*JI jj4& ±>^LJ 

J\ JxkxJ ,>^*i} .<uoljijo-.l J-J ( Area ) j-*^' *-*ir*j »jjj-<» Li» Jx>}Lj 

: ^VlfiiUij lt*U*iJ J-5 l^Ju^i £* OX.UJ" (X, Y, Z) ol^-ii- 

X = 5 

Y = 10 

Z = 

DO GetArea WITH X , Y, Z 

: jfitf ( Z ) ^jiill Iwj ,>* Jlj-JI jux-j 

?Z 



r-v 



«ljiui»aULi 



.( 50 ) w*)l jj& JfeOL 

c!U\A\ Jliol ^ obisJ ^si ( PARAMETERS ) ^\\ J ih>%> y^uy 
.*- ( Area ) J-UI Ji. ^b^JI ^ ^ £ |>| ^ fJi&mi ^ j* ^u^JI JJ 
( Procedures )ol>iJI £-1^ ^ Jui f j*ci*si 0X.UI JUJ J SJw.X. v^ ti 
.( DBase ) tt;U ^1^ sk.1^ 6 jliil ^ ^.b^ ^i ^ UJ f jic^, *JJj 

( GetCust ) oljJaiJI £.1^. A-ljj A - \* 

\±u £* b^Jlj .a^ J.LJI ( ProcLibl ) ol>iJI aL. ^i o^SL. £-t^JI Li* 

PROCEDURE GetCust 

PARAMETERS M_Cust_No, M_Name, M_Address , Exiting 

hJU.\ oliUH UU.'i L.U r Jiiti-j ^t^JI lift yi ( Parameters ) o^UUIj 

..Ujc-rtL filill g-li^JI Jl 

g-li^ jli p-l ^1 f oi»xJU Jijj Jl Isr, .( Lookup ) jJci\ J» ^»J\ J\ ^ II* 
( .T. ) i-Jill SiUI ^ ( Calling Program ) tr *Ji-!l g^l^-JI Jl i^ ol>*JI 

: IJLJI jjLJl J5U ,>- uUS ^ .( Exiting ) ^Jdll ,y 

IF Lookup = " " 

Exiting = .T. 

RETURN 
ENDIF(lookup is blank) 

: iJ^I jt*t-JI J*» <>• *iUi> • ( *- , y | '•** 0* ij ^ii (* ( Uppercase ) 
IFASC(lookup)>=65 

f-A 



Lookup = UPPER(TRIM(Lookup)) 
SET INDEX TO CustName, CustNo 
SET EXACT OFF 
SEEK Lookup 

L5j f l UJ Jiii f o^Jll otf lil L. ii^J ( ASC ) SJIjJI f LAsJ ^ 
J3i o^ l* ^>WI 5j £JI aji ,.15^1 U .( 65 ) ^ ( A ) o>kU ^S^l ^ i 
o-Jj ^j> >Ji fJAi-ll ji ^ ( IF ) juu J^ill jjw op eUJJj .( 65 ) ^ 

'-&• Cr> rk 3Jl » JI "* lPj •J-s**" r 5 .; o-^j f-7 1 J*ai *ji ,^ju ia*, .ulsJ 
Ji>X, >r ->l li* ^ &*J\ ^ ,j {J --lJ\ .j-^iJI »jL^L ( CustName ) ^^1 
>- iJL* J JUjL f JL^-JU C UJU ( SET EXACT OFF ) ^i\ f LasJ L* 

VjJWI J*-JI J! .W J! ^Oe U»j .4- ^Wl 

IF FOUNDO 

* Display customers with required 

* name 

M_Cust_No = Cust_No 

@ 5,0 CLEAR 

@ 6,0 SAY "Number Name Address" 
? 

DISPLAY OFF WHILE UPPER(Cust_Name) = ; 

Lookup CustNo , CustName, Address 
@ 22,2 SAY "Enter customer number" GET ; 

M_Cust_No PICTURE "9999" 
READ 
Lookup - STR(M_Cust_No , 4) 



JuljlvtJI JnUli 



^3 *S\ L> Ji>^ .lk> *JL-y ^jjs. j^ pJi\ II* Jx. j^Ull f JU- UU ^j 

j^^SUj *;i ^ li*j ..Jill ^^jj yj 3>>jll ( Error.prg ) oljJiiJI g-tU^ .L*iJ 

oljJ»*JI «-iL» (j-^ii J->"li *y?f* j>l oljJ*> p-«ljjJ ,><• oljJa> »-«Ujj «L*JU*J 

.( Procedure File ) 



.aJLjJI *i* «->>> 2JUI jjJbuJIj 



ELSE(If name not found) 

DO Error WITH "Not found 
ENDIF(name not found) 
ENDIF(name entered) 



ii 



i.j-iJI jli .l>-» o^So JLi>>. JUL jl £* ( VAL ) UIjJI >* gzs jd\ ^Ji\ J 
( Lookup ) j~sci\ J> (.JLitiJll a^ju L. c,\S lil "tfl &**Si ( IF ) jl^ i^II 

.Lijj> u~Jj liljLti 

jtfljl -CLfc Ct^«JI JLLfi. c^j JJjJ ^iJLfr JJb- yb ( QlSt_N0 ) JJ»JI jl vt«>j 

Jj^td ( VAL ) UIjJI -JLio-J dUJJj -ijiJ-ft i*-5 IfSjlio ^jUJI J-JUI jj ,>-. 

^^jUI jCi JUu j~i£l\ lift ^ fci^JI ^J p .^aJLt _ r Jii. Jl ( LOOkup ) j-izll 
: LJUI j^kJI Jfc. ,>* dJi -fSis •( CuStNo ) J~*JI fJy. ^UJ! 

IF VAL(Lookup) > 

M_Cust_No = Val(Lookup) 

SET INDEX TO CustNo, CustName 

SEEK M_Cust_No 

&p_ IJl*j ( .T. ) Jl ( Valid ) ^-Jtdl ^ ^ J-JI & J* j>sJI ^ &U 
^UJI ( Cust_Name) ^1 oi^ 3 ri r "^ % j* ^L^ 1 isUJI -^ r** Ji 
■( Address ) ju ^UJI jljJIj ( M_Name) jjcl\ J *J[ J^l pJ tfiil J^— JW 
U^ ULy ^^ ^ J--JI ,Jij Jj> j^i*JI fi |l liU •( M_Address ) ^1 ,> 

: SJL*)I Jl* jti»j3 iJ^ 1 j>J»— "j •( Error Message ) 



jjjIrtU j«UU 



IF FOUND() 
Valid = .T. 

M_Name = TRIM(Cust_Name) 
M_Address = TRIM(Address) 
ELSE 

DO Error with "Not found" 
ENDIF(not eof) 
ENDIF(number entered) 
ENDDO(While invalid entry) 
RETURN 

4-i Oj>jll gbaj^JI j.L?wl j£»J yiv t^-jJjil g-»li^JI J5l> &» 4*^i tp^^j OljJriJI 

. f lkLU V>" £-M iP 



v\> 



J^auoJI j JU*XI j a,e-<-"j« a-J"» d* 1 -** 



c^^A-JI J^IJI 



jiir^rj *-— oif ^uir ©#b- 



nr 



JrfAMOil $ JUxtUI j VsMj" SUJUUI g*l>< 



JUil ^Ujjj Oj-aII ZS^ JUil ^«U^j iJi> «X»x. JU-il w-ob^jj ( Main Menu ) 
g» it>j£, Oji Lfl/L^ fZj Oj«-j oXJJJ ^ikiil l f fc ! J .., fl j w«> ^ Lfs-j-i JjLJI OjW 



: JUI ^Vl LU5" pL> £-«l^JI II* <y ^^SU, -(j^-Vl 
SET PROCEDURE TO ProcLibl 



US' .jjUl J-aitl ^j Aa-jJi JjLJI ( Proclibl ) OljJ»*JI vJJu £Xi) JJij 

.^U^JI LLp Jj ( CLOSE PROCEDURE ) ^1 LUS" 

( \ - V- ) JSLiJL isvi.jll ULUI ^ 2-»b^JI lift j^JLij xx, 



- ^ . ; • 


fjy" 02/20/90 08:30:45 


" 


(Accounts Receivable Edit Menu) % ; , 




1. 


Add new customers 


2. 


Enter new charges 


3. 


Enter payments/Adjustments 


4. 


Print data 


5. 


Edit data 


6. 


Do monthly posting 


7. 


Exit 


Enter choice ( 1 - 7 ) 



( \ - t- ) J£ft 



Jji^Oll J Jbt!=M s Srf-rfJjM JUJllH gj* 



ZJUI j^LJI ^ p-»li^JI IJL» o^a' 



********************* *AR ore 
* Accounts Receivable Main menu 
CLEAR ALL 

* Declare variables as public for passing to 

* procedures. 

PUBLIC M_Cust_No, MName, M_Address, Message, Exiting 

* Open Procedure file ProcLibl.prg 

SET PROCEDURE TO ProcLibl 

* if color monitor in use , set colors ■. 

IF ISCOLORO 

SET COLOR TO GR+/B , W+/RB 
ENDIF 

* Set Parameters 

SET BELL OFF 
SET DELETED ON 
SET DEVICE TO SCREEN 
SET HEADING OFF 
SET STATUS OFF 
SET TALK OFF 

* Get the date (RUN needs abount 320KB RAM). 

? 

RUN DATE 

* . _ Create underline variable Uline. 

Uline = REPLICATEfJ" ,80) 



m 



Ja—aU j Jbs»)H j a,e-*Jj« »~*UI £-».* 



* Set up a loop for the main menu. 

Choice = 

DO WHILE Choice # 7 

CLEAR 

* Print screen title 

DO Title WITH "Accounts Receivable Main Menu" 
TEXT 

1 . Add new customers 

2. Enter new charges 

3. Enter payments / adjustments 

4. Print reports 

5. Edit data 

6. Do monthly posting 

7. Exit 
ENDTEXT 

@ 23,1 SAY "Enter choice (1 - 7) " ; 

GET Choice PICT "9" RANGE 1,7 
READ 

* Branch accordingly. 

DO CASE 

CASE Choice = 1 

DO NewCust 
CASE Choice = 2 

DO NewChrg 
CASE Choice = 3 

DONewPay 
CASE Choice = 4 

DO ARPrint 
CASE Choice = 5 

DOAREdit 
CASE Choice = 6 



HY 



Ja^-all j JUaUl j V*-»j» a~>UN ^^ 



DO Post 
ENDCASE 
ENDDO(while choice # 7) 

* Close procedure file and exit. 

CLOSE PROCEDURE 

CLEAR 

QUIT 

.(M_Oist_No)dUttll J- ( PUBLIC )^\ f lAsJ £-b*JI II* J> Ji>^Ly 
«i* j.L*iJ ( >£* : i t ^» i*Lli, ( Exiting ) <■ ( M_Address ) . ( M_Name ) 
la* ,jf LJ" •■»*»> 0-° IpLiJl liUI J[ i»UJI ,jji 3L*>II ^>I^JI £-» i^ dl^ll 
.Lul tiUI Jl £b>« "if ^j .( GetCust ) oi^JwJI ^-U^ f L*w-»V Ljuj-*' v-^y 

.£*bjJI IJL* »lj£ti«rl LfJ iljj 'by Ji" ,y ol^^iill hi* 

J»> ,^-jl, LiUJI Jj^ 3L.L&J ( Title ) ol^IiiJI g-li^ f LkiJ UJ -MLy 

.Ui-jiU .iLi, 3LSLUI J~*w ^i ( SET COLOR ) jM\ f lj^i-l UJ J»*.}Ly 
^L ZjIiSUI £• «15jj JLil» £j>£j J{ tfijj *** «j*^ll o}L»Ull £-» ^1 li*> 
OjJJL JuL£JI £- a. ? ...«:. 2LU> (>i> So Jl rf afe Li" .i-^jJI lALUI ^i >-Al 
.S>UJI »_*-> oljJSfl JL* J^juo ^Cw, ( Highlights ) SjSjjJI luxM ,y ^Ml 

ij*.^ll ( DATE ) £>Jci\ g-li^ J^LJ «*UmiJ p ( RUN DATE ) j*% 
-> JbJI jujUJI J->ju* f jl^~JU j^-i ^ ( MS_DOS ) J-aisJI f Lb; ^i 

ku ( DBase m+ ) $& o- ( RUN ) ^' f 'J^- 1 ^' ^^ vw -** WI 

.CwL J rV • ^ J53"il iS>. »/li 

( NewCustprg ) *^L-*JI SjUI^ v - v- 

OjUil f U»i ,y ixu*JI .l^fl f \jj ZiUI £-b* ,>* U^ ufeSi g-b^JI II* 
li* oli dUJJ oliUI iu, J* Jui~ ,^**JI obL-> f Uii iSl l> c&j ^J. jAJI 



m 



JjJa-ail t JUcmVU t l t mj iJH <UU1I gJ^ 



{t»--y Jul* J-wJ iiU»j Ji' £^ UT J— jJI pjj *iLi>. f> AJ J-lijJI o' US' .ftjI^Sb 

.JbO> >J |^j Jl>AJ jl fjj\ li* JjJb fJ&7....U 

^^-J^JI g-UjJJ -——-AjJI *-JUJI ,>- ( 1 ) pJjJI f J^~ll jUiw L-JULftj 

: UUI yU^I ,ji.yuy iiLUI jt— j g-UjJI jli ( AR.prg ) 
Enter Customer number (0 to quit) : 1001 

4jjJI II* ,Js. «iiljJLJ JUi'VI rUL* J-c hi.rt.ll j.JLkl-il ^Ja'w ZJUJI jlm ^j 

.>! uL> ^j LUS" ji 3--^' i" 5 ^ 1 J! gJfJU ( ) >L» Lllf ji 

: aJUII aJLijJI ^fk> li>>j-« U3j ».iW...1I y^£j Lojllcj 

Number already in use! 

i-A*wJI Jl>aVI iLili ^jj ( Y - r • ) J^LiJIj .jJ*JI li* oLL, ^jL JUal 

,>* ji ( Assistant ) juLJI ^lij, ^Ip JA> ^ UjLul ^ .ydlj .g-ol^JI IJL» ,y 

.( Dot Prompt ) XkUl ij^ &> ^ Wl «>i£-" tys* &J* 

USE Customer 

CREATE SCREEN FNewCust 

^jihii j^bJi j^c ^ju> a* ^ ^iii oijUs^i ^ ^Jb iiuji j* ^j 

Li* iiUJl J* jytJi u* ^L.1 jujbw ^ ^ .( Blackboard ) i Jy ~J\ ,> Uj^ 

• lib ^ icj*»w* ^ ^.-oliJI (_>liSUI ^ c^?' Jr" 

^L-JI f ift ^u liUil g-objJI JA> ^ *J (^UwJI ^ J-jJI ^ ol i^j 

£i*t-adl _^. dL^ ^ 1 ^ s > LiLill f*~a2 jjlc tJLiu j^j I!*, .*J^o f .J^>...>U 
^bi, J* JujJI ,j ( Customer Number ) J-JI ^ J^LslI ^j-aJI i>t *]l Jl 



Jd*">* j JUjaltl j V-sMj" a*JU» e^» 



( ACTION ) jLx^fl ,> ^1 o^j jul* JUo?l C Ui- J^ J*i*J| ^ ( F10 ) 

J! £/*•>* i*> { '^ ( F1 ° ) t 1 ^ -J* Jtj ^ 1 ri r •( Display/Say ) Jl *L^ 
(Highlight) ^^Jl ij-JI .lii»l iJUJI »L» ^ Ji^ .(Blackboard) ij^-JI 
J-*JI fjj ySA ?&*-& oi c<*; '-^j -iP*JI g* J* yijJI ( 9999 ) f l3,Vl .li £. 



Add New Customers 








liffisii|i||Ks|!©;& ; :; ^yW^Mi^f: 




™g3*Miis ,; h= 5g l?W***»Mil*^; 


paitiancswoaavs): rannncn -r,,: 


lialauce(,90 days): gpjJJJJJ] 


liiilanc^^ 



j^-JI ^ i»^i> ( NewCustprg ) j^—j «}LjJI iiU»l ^i pj&i-ll g-l^Jlj 

: 2UUI 

4cqC3|E3|C3|e3|C3|C9|C3|C3|C3|ca|t3|C3(C3|C ^J^U/fSlQt' TYTtt 

* Add new customers to the A/R system. 

* Called from AR main menu 

USE Customer INDEX CustNo, CustName 

* - - Store largest customer number to memory variable 

* - - NextNo. 
GOBOTT 

Next No = Cust No 



H< 



J**-aJI a JL**VI s j*-*^ -umh gJj, 



* Print screen title. 

DO Title WITH "Add New Customers" 

* Set up loop for adding customers. 

Exiting = .F. 

DO WHILE .NOT. Exiting 

* Increment customer number by 1 

Next_No = Next_No + 1 

* Suggest next number , but allow user to change it. 

@ 15,5 SAY "Enter customer number (0 to quit): " ; 
GET Next_No PICT "9999" 

@ 17,5 SAY "Press Return to accept number " 

READ 

* If zero entered , return to main menu. 

IF Next_No = 

Exiting = .T. 
LOOP 

ENDIF 

* Check to see if number is already taken. 

* If it is,loop and ask for another number. 

SEEK NextNo 
IFFOUND0 

? "Number already in use" , CHR(7) 

LOOP 
ENDIF 

* - -If next number isn't taken , add new record. 

* - -using FNewCust format screen. 
APPEND BLANK 

REPLACE Cust_No WITH Next_No 



J*±-all j JUiJfl j a^-s^j^ a*jUH gj* 



REPLACE Term WITH "NettO" 

REPLACE Last_Updat WITH DATE() 

SET FORMAT To FNewCust 

READ 

SET FORMAT TO 

@4,0 CLEAR 
ENDDO (While not exiting) 

* End of program 

CLOSE DATABASES 
RETURN 

J^t-JI fjj tiLjj ,jj ( Next_No ) y-Jidl f hia^\ g^UjJI II* J* JL>^L, 

.( Customer, dbf ) 

( Newchrg.prg ) Jj^JI ^>- S»L>[ ^li>. r - Y- 

A^-JjJI JuSUJI ,j-o ( 2 ) *JjJI .JLklJll jL£w LoJUft £-olJjJI lift J-J«-ij pZj 

.( AR.prg ) ^-L)^ 

.Liil \,1 f jL g-b^JI I!* i^LSJ, .( Charges.dbf ) «***U J^-JI W>* ^Wl 
^ ,>~JUI j^J\ LU£, eUjj ( FNewChrg.fmt ) o^-JI cbU J-juo JLsLa 

USE Charges 

CREATE SCREEN FNewChrg 

Z~£JI Ji> Ijlc- U ( Charges.dbf) oliLJI »jl*13 aL. Jyfa. J* J~~3 ^ 
^ (FNewCust) .^-*JI JU-il iiU <p ^Jb- LTj .(Billed) jijdl, (Amount) 
jUS?l J^j ( F10 ) c LUll r lj^-L aJij .J-axJI ^ J-JI ^Jj Ji> LL* 

.( Display/Say ) Jl ( Action ) 



m 



J^AuOll j JbiisVI j S^iM^jJ) 2*jUUl ^il^ 



,( f - T* ) J&JLlL iUv^jil »j_j*-aJL -kmOj LiLiJI f ^^ i 1 ^ > -« «LfU^/l JLLiSj 

Jl pjiaUl £U»w liUll J> ^Jj .( Charges.dbf ) vi^-JI ii> <JJU Jji> ^^ 

olj^iJ^o XjL&I w dUJJ ,Aj JLs>UJI obLJI JjAju . LjI <Clj^£j J,.yfc j .ll j^-,1 Zjyui 

f lo^i-,l ^ dJ'i JuiuJj •JLi-i'V' ^^ J! ( M_Address ) j ( M_Name ) i/IJJI 
: ^lf dUij iALUI (^^3 g-U^ JeJuu- J ( MODIFY COMMAND ) yS\ 

MODIFY COMMAND FNewchrg.fmt 



l ^wJUJI {)jja~m}\ 2JcS *Xj *J 



@ 4,33 SAY "Name:" + M_Name 
@ 5,33 SAY "Address:" + M Address 



o J-— jJLN LiUJI JSLi Jx «L> LfLjju j£*j oL3ljb."yi jl iii>X« *-« 



Add New Payments 



Customer Number ; 999 
Check Number : PEroiroi 



Date 



EEHEEl 



Part Number :EH2H Qty: EEffiHEH Unit Price: H2MEH 
Description : 



xxxxxxxxxxxxxxxxxxxxxxxxxx 



Curser Movement by Up , Down , Left , and Right arrow keys ; 



Insert Mode :1ns 
Save: A End ;orMY 



Delete Characters : Del 
Abandon : *Q 



( r - t- ) j£i 

^oljVl LU5" <^u Jjjudl IJj. JUil a* LaLJI £*\jJ\ Jklvwo ^u ^j 

.(Dot Prompt) XLiUI s^l* ^ JJUI 



J^juall s JUj=VI s a^-^-ijJI I.JUH ^1^ 



M_name = "Mohamed" 

MAddress = "12 Hegaz street" 

USE Charges 

SET FORMAT TO FNewChrg 

APPEND 

lilj .,JL, ( Format File ) J-SLliII .jL. u i J*. Jju Ijj. ,jli iiLJI o^J» lili 
«Li;l ^» d -k>^-i> .J-iLiJI uUL. ^ j-ju, Ibi ij^j Jx. Jju IJu> op ^3 J 
J* V ^iUij jL^V 1 • W JJ ( MAddress ) j ( M_Name ) i^lJJI oU*i* 
. Lsi L»i .( Charges.dbf ) o^JI ii^> uiL. Jji* ,^_i» ~hj>jj> c^-J ol^jdll 
^•Ijjj J!A> &* UjLtil ^ cilj;Jdll »Jub jli ( NewChrg.prg ) iiU»VI g^L^ JuLj 

.**,£ j_« ^JJI ( GetCust.prg ) cAJ&AS 



Jji\£ *jLi»"jfl gjbjj jjJa-> JbU3" *iy 



************** NewChrg.prE. 

* Add individual charges to the Charges database file. 

* Called from AR main menu 

* Print the screen title 

DO Title WITH "Enter New Charges" 

* Open both Charges and Customer databases. 

SELECT 1 

USE Customer INDEX CustNo , CustName 

SELECT 2 

USE Charges INDEX ChrgNo 

* Set up loop for adding entries. 

Exiting = .F. 

DO WHILE .NOT. Exiting 

* - - Get customer name or number , and validate. 



m 



jejuni s jujJh t ****** a^un %a m 



SELECT 1 

DO GetCust WITH M_Cust_No, M_Name, M_Address,Exiting 
* — Allow user to enter transaction data using FNewChrg screen. 
IF .NOT. Exiting 
SELECT 2 
APPEND BLANK 

REPLACE Cust_No WITH M_Cust_No 
REPLACE Date WITH DATEO 
REPLACE Billed WITH .F. 
SET FORMAT TO FNewChrg 
READ 

CLOSE FORMAT 

REPLACE Amount WITH Qty * Unit_Price 
ENDIF 

@ 3,0 CLEAR 
ENDDO(While adding new transactions) 

* Return to main menu. 

CLOSE DATABASES 
RETURN 

: 51L. JUI J^Jl iiUI ^ ( Amount ) *~SJ\ Jl :L^JI liUI ju,i lil 
Amount = 1,05 * Amount 

(NewPay.prg) aIj*JI aS>- mU ^.b^ i - r» 



ij\ UUII &. { T ) fSjl f JtJoJll jliiw L.ju* ^b^JI IJL* J^Lij ^ 
iU-JI !i> oLLu iiU.1 yj ^-.U^l II* fjjiu*, .( AR.prg ) g-U^-U 
.( Payments.dbf ) iLUI tf>, ^UJI obLJI ;jl^15 JL. Jl ( Payments ) 



m 



J**»all j JUiJU j a^-HMj" a*J>« £<I.h 



JU-jl iili «lijl p^j vi^> o^oJI iS^ ZiU>l g-oL^j L*Lj JJLj ^U^JI II*, 

USE Payments 

CREATE SCREEN FNewPay 

Jji> J^*.iQ *Zjj .2 A Lt .ll *— <^ JLoUJI oljL^-VI *jlj3 ^fkt UUJI »jj> jjj, 
L/ .( Posted ) J->^l JJfc- .L1l-,L L^ ( Payments.dbf ) iL-JI i5> OL. 

ZJL> Jl ( CuSt_NO ) J-*«JI (Jj JJ> J-y^J ( F10 ) ^Ui. f ljL^LJ pJL; 

yj&i-JI SkJ^ Jjjus ^i j-o L»^» £j*aj ^ ( Display /Say ) 

f |jL^-l ^ Jli^l ^^ JI ( M_Address ) j ( M_Name ) ,>i^l "^j 
ji> ,>* ( MODIFY COMMAND ) ^Vl f Ij^-L dJij .iiLJI Uu>JI ^ 

: JUI >-JI Lltf 

MODIFY COMMAND FNewPay .FMT 

@ 5,35 SAY "Name:" + M_Name 
@ 6,35 SAY "Address:" + M_Address 

.( I - V- ) J5LUL i«-i.jll »jj~JL. jt--a3 LiLiJI ,^-^u ,>« •W^? 1 ^J 

,^Lj L^ .( Payments ) j>Ijl- iS> ^? iiLi.1 ,y LiLUI a* f LmiJ ,^^-uy 
A3U»I iUy -< jr.* Ji J— —Jl ^UjJ JLLft ( Adjustment ) -k*^ ii> J\ 3-»L*j 

.( Descript ) ui-»>JI Ji> ^i S-JJI »Ift £j>> vr— cH'j 3 (^ 



rn 






Add New Payments 



Customer Number : 999 Name : 

Check Number : W2MM Address 

Amount imSMM 
Description : 



xxxxxxxxxxxxxxxxxxxxxxxxxx 



Curser Movement by Up , Down , Left , and Right arrow keys" j 



Insert Mode : Ins 
Save : A End if or A W 



Delete Characters A:Del , :j ;l; ] 1 

• Abandon' : 'i*,Q r j;|r ! ri&plph'>jij 



( i - Y- ) J&i 

olj-LiJI 2-*Ujj fbJwJ j^Xj (Jj-iJI tSy* *JLi>l g-*L>jJ !......:-IL *j L*Sj 

uj- Uj .dill J »j>j ^ oSliir, ^jj jl J^*JI ^J ^ cl^kJI ^ ( GetCust ) 
oli^Li-l ^ ( NewChrg.prg ) J^-JI !S> iiU»l g^ jaL- j-LjJI jli Ja»^L; 
^ *JA> ( MODIFY COMMAND ) yH\ f ljii*L *^-j ^ dJit .L> Jjjj 
dJij *j L^iMl caLusll .1^1 ^ ( A KR ) LU& ally, .jlu»JI Oill J> alll 11* 
.g^U^JI II* ^Iji ju^s jLJUI jjIuJIj .jlu> &> oLS" ^ Voj 

* Add individual payments to the payments file. 

* Called from AR main menu 

* - -Open both Payments and Customer databases. 

SELECT 1 

USE Customer INDEX CustNo , CustName 

SELECT 2 

USE Payments INDEX PayNo 



fYV 



J^AuLiM j JUiJtl j Ij-sMjll a^lUM £-lw 



* Set up loop for adding entries. 

Exiting = .F. 

DO WHILE .NOT. Exiting 

* - - Get customer name or number , and validate. 
SELECT 1 

DO GetCust WITH M_Cust_No , M_Name , M_Address , Exiting 

* - Allow user to enter transaction data using FNewPay screen. 
IF .NOT. Exiting 

SELECT 2 

APPEND BLANK 

REPLACE Cust_No WITH M_Cust_No 

REPLACE Date WITH DATEO 

REPLACE Descript WITH "Payment" 

REPLACE Posted WIHT .F. 

SET FORMAT TO FNewPay 

READ 

CLOSE FORMAT 
ENDIF 

@3,0 CLEAR 
ENDDO (While adding new transactions) 

* Return to main menu. 

CLOSE DATABASES 
RETURN 



( AREdit.prg ) J-j-dl ^.b* 6 



- Y» 



( EdCustprg ) ,%uJI ZiU»l ^i*s £*Li^ f lj*^-L .^LjJI c»LL-> Jja*j ^ 
aIjl-JI 15> j-jjud g-bj^ ( EdChrg.prg ) L>^\ IS^ J_^c js-^^j 
J^jucJI U515 ^^ 3-i> ■>* g-U" *** J> r^*^' r^ •( EdPay.prg ) 
0— < 5 ) jJjJI jJAsJII jlsiy L.ju* ^-UjJI li* J^JLis f*t •( AREditprg ) 
PJ 1I 3L5UJI ^fto g-lijJI IA* Js*^ ■«*, •( AR.prg ) e*l5,JJ Ss-jpi UUII 

.( o - V- ) JSLUL 



rYA 



J^audA j JbijaMI 4 1*-+JjH a*JUM ^yf 



02/20/90 08:30:45 



(Accounts Receivable Edit MenuJ 



1. Edit Customer File 

2. Edit Current Charges 

3. Edit Current Payments 

4. Return to main menu 

Enter choice (1-4) | 



( d - Y- ) JSLa 



******************* /^RJEdit.nrg 

* Menu for editing the A/R System. 

* Called from AR main menu 
EChoice = 

DO WHILE EChoice # 4 
CLEAR 

DO Title WITH "Accounts Receivable Edit Menu" 
TEXT 

1. Edit Customer File 

2. Edit Current Charges 

3. Edit Current Payments 

4. Return to main menu 
ENDTEXT 

@ 24,3 SAY "Enter choice (1 - 4) " ; 
GET EChoice PICT "9" RANGE 1,4 
READ 



m 



J,,*- all j JU*dll 3 i*~+ij» will #1* 



* Branch accordingly. 

DO CASE 

CASE EChoice = 1 
DO EdCust 
CASE EChoice = 2 
DO EdChrg 
CASE EChoice = 3 
DO EdPay 
ENDCASE 
ENDDO (Echoice # 4) 

* Return to main menu 

RETURN 

( EdCust.prg ) J^l JUL JjjjC \ - 6 - y* 

c%uJ\ JUol LiU ^-ii ^ ( FEdCustscr ) J~*JI uUl. J^ JLiLl 
Jl ^ __-" v^u o'j^JI o' j-*j ■»-=>> •J3LsH £- ( FNewCust.scr ) 
jujl^JI oilll ^ J-**" *-iLi uiL. j— ; ^ dLIUj ( Edit Customers ) 

: jftf aUi, ( FEdCust.scr ) 

COPY FILE FNewCustscr TO FEdCustscr 

: Jlsll >JI Llrf pi ^ 
MODIFY SCREEN FEdCust 

^ J^JI J^jl*5 i^y ( Blackboard ) hj~-U ^ i^ 1 A* i? 
C^jic pi ( Edit Customers ) jIjJjJI Jl ( Add New Customers ) 

.( "\ - Y- ) JSUI Jz\ .«Ju»»JI iiLJI 



rr- 



J-.*«afl t JU*KI t i*»+ijl i~M& %*** 



Edit Customers 



Customer Number : 999 

Customer Name: im?m!Mm!MBa 

Address :lWMUmui?mtt^^ 



Starting Balance i^MESl Terms : f tSSSHHBSSH, 
Balance(30 days): EUHSKH Balance(60 days): EEEERH 
Balance(90days):eSQ!QES] Balance(90 +days):GSSEESQ 



( -\ - r- ) j£j, 

g^l:^ jijuki--; jj»j ( EdCust.prg ) ,j— j J-— *il t-iL* J^H 1 * 3 g-^^oiJ 
£*LJI Ji- i^X, j\ ju3^ J~*JI ,>& £~JI ^i ( GetCust.prg ) ol>*JI 

* Edit Customers information 

* Called from A/R Edit menu 
* Print the screen title. 

DO Title WITH "Enter Customers File" 
USE Customer INDEX CustNo, CustName 

* Set up loop for editing. 

Exiting = .F. 

SET DELETED OFF 

DO WHILE .NOT. Exiting 

* GET Customer by name or number 

DO GetCust WITH MCustJNTo , M_Name , M_Address , Exiting 



HT\ 



J-4-aH 3 JU*Jil s a^-.Hj" aittll £■!.* 



* - Edit using the FEdCust screen (if not exiting) 
IF .NOT. Exiting 

SEEK M_Cust_No 
SET FORMAT TO FEdCust 
EDIT 

SET FORMAT TO 
@4,0 CLEAR 
ENDIF 
ENDDO (While not exiting) 

* Return to main menu 

SET DELETED ON 
CLOSE DATABASES 
RETURN 

( EdChrg.prg ) .Jj-all uUu J^ y - © - r» 

fij JUoL r J ^T .,.JJ 2— t ( Charges.dbf ) .J^JI ub> Jjjul; £*Ujj 
(y>lii» j.l^Jo-,1 ^ «_a11I ,^3 J-**II lis alSLo jujl>ixI ju—l ji J_--» 
Jl Jj-^jJJ J-uJI II* t^U Ji> JS" ^^ ^ ( PgUp ) j ( PgDn ) 
**> J^ <> ( FEdChrg.scr ) LiUJI p jio_3, -ULjug ^^JLLdl ZS>JI 
( FNewchrg.scr ) uj-aJI SiU.1 iili £~J ^i. LiLJI .i* *liStj .o^-JI 
: JbJI >-JI LL& dilij ( FEdchrg.scr ) J^jucJI iili ^i 

COPY FILE FNewChrg.scr TO FEdChrg.scr 

: JUII >-JI 1j\X rifS 
MODIFY SCREEN FEdChrg 

j| 3-iLiJI jljJLt J-jJUuj ( Blackboard ) ijo--JI ^j-e. ^ Lr ^>- 
j.jLio— JJ £b^J iiLiJI JJu.1 oLJuu ZjU>[ pSj U ( Edit Charges ) 
j ( PgUp ) ^LlL. r L*s-L tf>l ii> Ji S5> ,>- JLSfll Li/ 

(PgDn) 



T-ft 



J^MMiM s J*"® J »*-*Jj« a-*"" *** 



o^U-JI j-i>. ■:v,*~ j Oj-JI Ul- J»i>j ( Customer.dbf ) .**-*fl 

li* r l J* J^JI fi J— -II U« ^ wl J^ 1 J* ( Record Pointer > 

: jA\ SkJ^ iiLiJI wiJu J^JLw Ji> o* •« u * riJ -°^J ik**" 

MODIFY COMMAND FEdchrg.fmt 

@ 4,33 SAY "Name:" + TRIM(A-> Cust_Name) 
@5,33 SAY "Address:" + TRIM(A-> Address) 

fi :<ii J* <JSjS &jkJ\ CfiMi *~»WI oLSI^V 1 «j' *&**-» *r-*i> 
a> J^ ,y I^o^lJI iilill »jj-» g** { V - Y • ) JSLiJIj .ULJI 



Edit Charges 



Customer Number : 999 Name : 

InvoiceNumber :BmD ' ^y^ ^\^^. 
Part Number : BEEH QtyiijiBBEIUp Unit; Price: HHSJKH 
Description : BflM^MMfl^^ 



Curser Movement by Up , Down , teft , and Right arrow: IreysS 



Insert Mode : ins 
Save : A End . or A W 



: Delete Characters : Del; 
Abandon t ; A Q ; f t;S«? ; 



( V - V- ) JSLi 

.XjJI tiL. ,y ij>jll ( Record Pointer ) o^U-JI j2.y* ^ ^»ci\ ^j ^SUj 
( CusLdbf ) .}U*JI «yiL. a-j J35U .Ltil u-« jjI^j J-JiJI p-J J*. Jj-^JJ 
( EdChrg.prg ) Oj-JI .JL. J^juj g-»b^ JiU ,>» dJij ( Charges.dbf ) oij-Jlj 



rrr 



Je*»aJ| 4 JUjsJU j irf-rf-JjJI a^jllH gj* 



* Open both Charges and Customer databases. 

SELECT 1 

USE Customer INDEX CustNo, CustName 

SELECT 2 

USE Charges INDEX ChrgNo 

* Set up relationship 

SET RELATION TO Cust_No INTO Customer 

t \x> J-~*Hi u" 1 ^ 1 J^ 1 u-ii J* U5la dui ^jll Jj*o SuJ\ Li*, 
JUL, .iiLiJI J-p I**,* ^ i^JI **>» ,>* >J' ^4 J-^ 1 fjj J* 
U* L*li. tf> ^1 JjJug .LSI iiLiJI J* U-jy^. a\j^j J~JI ^-1 Jk. 

******************** EdChrg.prg 

* Edit invalid charges in the charges file. 

* Called from A/R Edit menu 

* - -Print the screen title. 

DO Title WITH "Edit Current Charges" 

* open both Customer and charges databases. 

SELECT 1 

USE Customer INDEX CustNo, CustName 

SELECT 2 

USE Charges INDEX ChrgNo 

* Set up relationship 

SET RELATION TO Cust_No INTO Customer 

* Set up memory variables and loop for editing 

SET DELETED OFF 
Exiting = .F. 



Jrf^-aJI j JU*VI j ****** i*jUUI $4 jf 



DO WHILE .NOT. Exiting 

* Get Customer by name or number 

SELECT 1 

DO GetCust WITH M_Cust_No, M_Name, MAddress, Exiting 
* - Edit the transaction, if valid and not exiting 
IF .NOT. Exiting 
SELECT 2 
SEEK M_Cust_No 
IF FOUND .AND. .NOT. Billed 
SET FORMAT TO FEdChrg 
EDIT 

CLOSE FORMAT 
ELSE 

DO Error WTTH "Already posted.Make adjustment" 
ENDIF 
ENDIF (not exiting) 
@4,0 CLEAR 
ENDDO (While not exiting) 

* Recalculate amount field. 

SELECT 2 

REPLACE ALL Amount WITH Qty * Unit_Price 

SET DELETED ON 

CLOSE DATABASES 

* Return to main menu. 

RETURN 



IF FOUNDO -AND. .NOT. Billed 

m 



J^^uaJI 3 JUaJII j irf-sfj^H iujUII ^^ 



j^ Jja*JI J[ (.JiwJI *>j3 ( Error Message ) Iti iJLy ^fki aJL*^; 

aJLc elf^l JLkj iz?OL> LS* .iJjmJI JtfJ> i_iL« Jl »JuJl> "*Sj> iiU»l Jj,i> 

: JLJI >~JI «U,| J^JucJI 

REPLACE ALL Amound WITH Qty * Unit_Price 

.J^jJI IJ4J U£JI j^-JI i^r ,y S^L^ 
(EdPay.prg) Jj-JI Ul* J-jju r - a - r« 



i-JL; UjLijI *Ly JjJloJI ,_,* ( FEdPay.scr ) LiLJI ^jlJcl-j j*, .Zia*-JI 

: ^tf dJij ( FNewPay.scr ) iiliJI 

COPY FILE FNewPay.scr TO FEdPay.scr 

J! jlj^JI &*** c^ ( MODIFY SCREEN ) ^1 f Lis-I pi ^ 
j ( PgUp ) ij>kJu> f IjlJ^L JL^UJI cilalijjN iiU»lj ( Edit Payments ) 

■<*>! J! *> *• J^ 1 u* ( p g° n ) 

^ ( MODIFY COMMAND FEdpay.fmt ) ^Sll f L&zJ ^ US' 
^LJI pJi-U UX &> &* dJij .LiLDI ,y *Jl^tj J--JI p-l Jl>>| 

.( FEdpay.fmt ) JLiLUI JL* J 

@ 5,35 SAY "Name :" + TRIM(A -> Cust_Name) 
@ 6,35 SAY "Address:" + TRIM(A -> Address) 

.JUo^l LiU ljj^> f^ji ( A - Y • ) JSLJIj 



m 



JjJta-aJI s Jl^aVI s *****# Uim fr»'>* 



Edit Payments 



Customer Number : 999 Name: 

Check Number zWBEBBM Address: 

Amoun : WSSBEl Date: EffiEQZH 
Pes<rtPtion : WMWtt^^ 



Curser Movement by Up , Down , Left , and Right arrow keys 



Insert Mode : Iris 
Save: A End or A W 



Delete Characters : Del 
Abandon;: A Q 



I A - Y- ) JSLi 

: XJLJI jjAmJI ^o oj£~i J^***'" T^^jii 



* Edit invalid payments in the payments file. 

* Called from AR Edit menu 
* Print the screen title. 

DO Title WITH "Edit Current Payments" 

* Open both Customer and payments databases. 

SELECT 1 

USE Customer INDEX CustNo, CustName 

SELECT 2 

USE Payments INDEX PayNo 

* Set up relationship 

SET RELATION TO Cust No INTO Customer 



Set up loop for editing entries 

VTV 



J-iuoJI j JU*HI j a*-*-^ *JU» $*m 



SET DELETED OFF 

Exiting = .F. 

DO WHILE .NOT. Exiting 

* Get Customer by name or number 

SELECT 1 

DOGetCustWTTH; 

M_Cust_No, MName, M_Address, Exiting 

* - - If not exiting , and transaction not already 

* posted , proceed with edit. 

IF .NOT. Exiting 
SELECT 2 
SEEK M_Cust_No 
IF FOUNDO .AND. .NOT. Posted 
SET FORMAT TO FEdPay 
EDIT 

CLOSE FORMAT 
ELSE 

DO Error WITH "Already posted, Make adjustment:' 
ENDIF 
ENDIF (not exiting) 
@4,0 CLEAR 
ENDDO(while not exiting) 

* Close databases and return to edit menu 

SET DELETED ON 
CLOSE DATABASES 
RETURN 



VTA 



«]UR »M-» ^*i ^J 1 ** 



**u*ir *bu» ©«kH jrfjUa 



rn 



<]UaH juLLha. £dijj yij 



Ua 



JJL. ( Reports ) y js^\ ^ *«***-. Jx ( A/R ) .*-*N oU~~ £-b* 
( Summary reports ) v^l ^UJIj JL^+JI ^UJIj ( Invoices ) ^JljJLlI 
j^jiii, oliLJU aLjjJI Lolill f j*w-JLI >^3 jd\ ( Aging reports ) *~->JI .^ytfiMj 
•j^Lj ^1 ( Historical Reports ) 2-JuyUI ^Uill aUj^j .J~**ll 1*^1 L-jikJI 
ijL*»| oUjj Jj. .Lj f LkJI ,y loM\ c^UjuJI J>>.lj oljlytfl iUwl J* 

.oU>JLJ 

,>. ^s- ji t \&u sjjcis &> t i^i j* >p ^i g-UJi us* jii jsyi ^ 

g-l^JI J-ii3 ifr^ b\JG>H\ i\ji L.JUL* Uj-aij g^ljJI Jut* ^ JL-JlEll JiL-jJI 

oX»L*llj ( Procedures ) ol>biJI g-*!^ flJ^«iJ |t-~j <J>— •* *JJJJj .^Ltfj 
.jjijUJI ,>* iik^-. ^IjiV g-olj; p— -a; (►=-* Li" £*UJI juu ^ ( Parameters ) 

( ARPrintprg ) *~*JSJ\ ji>\M\ i*sl5 £.b>. N - y\ 

.^LjJI oLU> g-LJjJ ? ■ ...ytl i-iUII ,>• ( 4 ) fVI f Jiiti-il jL^w Ujlu. 

.{ \ - Y\ ) JSLUL bvfejll oljLSVI 3LSU jjto (A/R) 




1. Wnt^6ntW^Jstsifara^te^^]^ ; ^; 

2. Print monthly siinMn^y;g^ ; ( 

3. Print aging t^wj^M^M^i^\iMiS 

4. Do quick looking of customer status 

6. Retruh tdiiiirinOT«*uK¥^l^pf^S 
Enter ;■ choice?( ii^^MM^W^^0&P^M 



( \ - V\ ) J5Li 
i3 v^y -(Invoices) j^ljill UUt al^ Ujllc ^jSc^j J,Vl jL^")Hj 



V£\ 



iltrfJI aLUa £*b>j j^jltl 



^jl^ill j^U, j^ ^| ^ j^ij ijJt L^i 6 l.ju^i (3,2) o'A^'j 

.4j ^UJI ijL-pJI i«»ly. J^l JLj^ UjLUi f JliCw ( 4 ) fJj jLSVIj 
^JLiii-JI 5JLC.LJI vl— > ^ J4~jLi oLLj ^1 I**^ ^ ( 5 ) »Jj jLjli-^lj 

J ^ dte±Si ( ARPrint.prg ) yjsdl *~~£j\ i*iUJI ^^u ^UJI g-U^JIj 

: iJUl jjiuJI {r* Jj&o, -tf>Vl Ju-tA/" ** 5li " £"Lrf 0-* £*lo; 

********************* ARPrint ore 

* Menu of Print options for the A/R system. 

* Called from A/R main menu 

PChoice = 

SET DELETED ON 

DO WHILE PChoice # 6 

CLEAR 

DO Title WITH "A/R Print Menu" 

TEXT 

1 . Print monthly statements 

2. Print monthly Summary 

3. Print aging reports 

4. Do quick looking of customer status 

5. Review history 

6. Return to main menu 
ENDTEXT 

@ 24, 1 SAY "Enter choice (1 - 6)" ; 
GET Pchoice PICT "9" RANGE 1,6 
READ 



W 



*1Lj»H juLL^x £tb* n jlt» 



* Branch accordingly. 

DO CASE 

CASE PChoice = 1 

DO Bills 
CASE PChoice = 2 

RepForm = "ARSumm" 
DO AgeSumm 
CASE PChoice = 3 

RepForm = "Aging" 
DO AgeSumm 
CASE PChoice = 4 

DO ARStat 
CASE PChoice = 5 
DO ARHist 
ENDCASE 
ENDDO(PChoce#6) 

* Return to main menu 

SET DELETED OFF 
RETURN 

is* JuLj JJ. jLij,, ( 3 ) jL^VL, ( 2 ) jL=Mfl of g-b.JI U» ^ Jw-X, 
t—. U iJU JS" J Ubiu* j^jt; ,>u f-b^JI ^j ( AgeSumm ) ^.b^JI 

.Jul, L_» rL-iiVI 

( BillProc.prg ) oljLiJI JUL y - x\ 

*i^JI ^1^1 £*lij* i>>j vi>LLJI i*5li u^UJI jA-JI g-b^JI ^ ±^Kj 
^UJI ( ARStat.prg ) ZJUJI jlu^s g^byj ( 1 ) jL>VL ^UJl ( Bills.prg ) 
J^ i*^ iaLjJ, .( Invoices ) ^l^iJI icLt ^ ^Uuc^ L*j ( 4 ) jLi^L 

( PrintBills.prg ) ol^iJI ^b^ J* ^^^ ^ .( BillProc.prg ) * r ,,. ,-, 
ilj lili >~JI ^3, jUsL fJ JL ^j ( RowCheck ) ^^-u >T g^b^ Jl iiUVL 



rtv 



^JUdl -.LUa. ^^ ^ jtta 

v J h- : ,Jj- JJi o^J »jLAi[ .J^-J' ( Proclibl ) Cil > lwJI OL. ^i Iftf g-lyJI 

c—Jj •( DBase III+ ) £* ,o*iJU oLKJI gJU- ^ >I oLK ^JLui r lo»^.l 

cjj k-i^JLkil oljLiJI i_«Lo pzi j^j &~> c^LjJI oLL*> p-*^ ^ 1-ifJ *>l> tilL* 

.g-bjJI ..US' ,y ^j, 1 * cljLiJI oliL. iJiiu jlj dUJJj .oUi juu *3^UI ^ *>UJI 

: ZJLJI jjk^Jl &> jjSo ( BillProc.prg ) «JUIj 

******************** BillProc.prg 

* Print a bill.using procedures PrintBills and 

* Rowcheck Called from Bills.prg and ARstat.prg 
PROCEDURE PrintBills 

PARAMETERS M_Cust_No , Printer, Status 

* IF printer , print address, date in English 

CLEAR 
Page = 1 
IF Printer 

EngDate = CMONTH (DATEO) + STR(DAY(DATE()), 3) + ; 
V + STR(YEAR(DATEO), 4) 

@ 1,0 SAY "My company , inc." 

@ 1,60 SAY EngDate 

ROW = 6 
ELSE 

ROW= 1 
ENDIF 

* Print Customer name and address Using 

* Row variable to control display and eject. 

SELECT 1 

IF Cus_Name # " " 

@ Row,0 SAY Cus_Name 



rii 



ENDIF 

@ Row + 1 ,0 SAY Address 
Row = Row + 4 

* — Print customer number , terms and statrting 

* — balance from the customer file . 

@ Row,0 SAY "Customer No, : " + STR(Cust_No, 4) 

@ Row +1,0 SAY "Terms :" + Terms 

@ Row+2,0 SAY "Balance of " + DTOC(LAST_UPDAT) + ": 

@ Row+2,25 SAY Start_Bal PICT "999,999.99" 

@ Row +3,0 SAY Uline 

Start = Start_Bal 

Row = Row + 5 

* Print heading for charges . 

@ Row.O SAY "Inv. # Part Description QTY" 
@ Row,43 SAY "Price Total Date" 

Row = Row + 2 

* - - Select charges database :list and total current 

* - - charges. 
SELECT 2 
SEEK M_Cust_No 
Tot_Charge = 

DO WHILE Cust_No = M_Cust_No .AND. .NOT. EOF() 
IF Status .OR. .NOT. Billed 

@ ROW.O SAY Invoice_No 

@ ROW,7 SAY Part_No 

@ ROW, 13 SAY Descript 

@ ROW,34 SAY Qty 

@ ROW.39 SAY UnUPric PICT "999,999.99" 

@ ROW,50 SAY Amount PICT "999,999.99" 



ru 



jilUall .aljUiit jubjj >rfjUL> 



@ ROW,62 SAY Date 

TotCharge = Tot_Charge + Amount 

ROW = ROW + 1 

* Make as billed if not a status check 

IF .NOT. STATUS 

REPLACE Billed WITH .T. 
ENDIF 
ENDIF(status report and not already billed) 
SKIP 
ENDDO (Cust_No = M_Cust_No) 

* Print payments heading . 

@ROW+ 1,0 SAY mine 

@ ROW+2,1 SAY "Payments / Adjustments" 

ROW = ROW + 4 

* Check row position if displayed on screen. 

DO RowCheck WITH 20,64 

* Select Payments file : list and total 

* payments/ adjustments. 

SELECT 3 
SEEK M_Cust_No 
Tot_Pay = 

DO WHILE Cust_No = M_Cust_No .AND. .NOT. EOF0 
IF Status .OR. .NOT. Posted 

@ Row,0 SAY "Check r 

@ Row,9 SAY Check_No 

@ Row, 16 SAY Descript 

@ Row,50 SAY Amount PICT "999,999.99" 

@ Row,62 SAY Date 

Tot_Pay = Tot_Pay + Amount 

ROW = ROW +1 



m 



iJU-Jl *LUa. j^b^ >rfjUUi 



* - - Check row position if displayed on screen 
DO RowCheck WITH 20,64 

* — Mark as billed if not status report 
IF .NOT. Status 

REPLACE Posted WITH .T. 
ENDIF 
ENDIF(status report and not already posted) 
SKIP 
ENDDO(while Cust_No = M_Cust_No) 

* Check row position if displayed on screen. 

@ Row,0 SAY Uline 

DO RowCheck WITH 17,56 

* - - Print starting balance .total charges, payments, 

* - - ending balance , and thank you note. 
SET FIXED ON 

@ Row +1,5 SAY "Previous balance :" 

@ Row+1,25 SAY START PICT "999,999.99" 

@ Row+2,5 SAY "Total charges :" 

@ Row+2,25 SAY Tot_Charge PICT "999,999.99" 

@ Row+3,5 SAY "Payments received" 

@ Row+3,25 SAY Tot_Pay PICT "999,999.99" 

@Row+4,5 SAY "Balance due :" 

@ Row+4,25 SAY (Start + Tot_Charge) - Tot_Pay PICT "999,999.99" 

SET FIXED OFF 

IF Printer .AND. Status 

@ Row+8,10 SAY * * * Duplicate Invoice * * * 
ENDIF 
IF Pritner .AND. .NOT. Status 

@ Row+8,5 SAY "Thank you" 
ENDIF 



rev 



xlUall juLLiu gjb^j ^^jlla 



* Pause if not going to the printer, 

IF .NOT. Printer 

@ 22,0 CLEAR 

WAIT 
ENDIF 

* Done printing bill, Return to menu. 

RETURN 

* Procedure for checking row positions on screen or printer 

PROCEDURE RowCheck 

PARAMETERS ScreenMax, PrintMax 

IF .NOT. Printer .AND. Row > = ScreenMax 

@ 23,0 CLEAR 

WAIT "Press any key for next page" 

Row = 1 

CLEAR 
ENDIF(Row too big for screen) 
IF Printer .AND. Row > = PrintMax 

@ Row+2,70 SAY "Page" + STR(Page, 1) 

Page = Page + 1 

EJECT 

ROW = 5 
ENDIF (Row too big for printer) 
RETURN 

3JUJI s^JJu iftUJ ( Status ) ;>IJJI j*iz* f Ijl^xJ £-lJ^JI J» -^>Xy 
Jl ( .T. ) i-JLil JUij f3 lilJ .Lj^iJI Sjplill J* dJi ^. rf &> ( Status ) 
dJilj L^i \j>ja ^j Jiii 3LIU jjjZ L-jjJLkll ji yiiu IJl* jli ( Status ) j-*dl 
r~j ( Not Status ) Ju^-a Sj^Ij ^£JI o^ 1*1 L-' -J-ev 3 to* -ri^ 1 ^M» p 
r ljicu-L iiUi juu *JL>jJ ^ ^^> ( False ) Jl J^JI J-**- Si*** £* Ai£.U» 

.,}L*II oLL-* £-b*J L-aSjl i-3ULri ,>• ( 6 ) jL3^l 



YU 



ilLmM aLLa gJbtf mjIX3 



jU-UjJI jlJi*j .( ARStat.prg ) 3JUJI ju^ g-bjy ( Bills.prg ) ij^-iJI j^U&JI 



3LJUI .Ij^l J \^>j 



( Bills.prg ) \^i\ j^\^\ g-b* r - y\ 

j^Lfc ie.U» £-t^ JuHi ^ ( 1 ) fjj jl~>?l Jli-il XLc jwli^JI II* r J^w 
» JL» cJjJI Lr Jj ^j JL^-iJI j^jljJJI Lc-LJaj .jJu p-aLj-JI IJl*j ..^UjJI oLL~> 
UL. ^ ( Billed ) jujl-JI Ji> jtf .Ij- J~»>JI JJi» ^i ( .F. ) JLJtfl JUoL 
JjuJI JdU ^J ( Posted ) J->jJJI JJU- ji ( Charges.dbf ) 0,-JI 
vJUULI JI j-3l>iil tJu» Jt>j3 liUi juu f aio-JLI ^/-i. ,^» ijUi, .( Payments.dbf ) 
( -\ ) jjj jLjs-VU ( Monthly Posting ) ^^fiJI J->>JI g-li^ j^J* ,>& tr-a^' 

..^LjJI oLL»> »b,J ij-^JjJI Juilill £.* 

: ZJUI jjLuJI ^ £-°UjJI IJl* OjZ-Zjj 

********************* *Bills ore 

* Prints monthly statemetns. 

* Called from AR Print menu. 

* Have user prepare printer (or cancel). 

Proceed = " " 

DO Title WITH "Print Monthly Bills " 

@ 15,5 SAY "Repare printer and press a key to proceed" 

@ 17,5 SAY "(Type X to cancel)" GET Proceed PICT "!" 

READ 

* Return to menu if requested. 

IF Proceed = "X" 

RETURN 
ENDIF 

* — Open files and delete records with "0" Amount. 

m 



<lL*a jsAJUa. gteji >rf jUa 



SELECT 1 

USE Customer INDEX CustNo 

SELECT 2 

USE Charges INDEX ChargNo 

DELETE ALL FOR Amount = 

SELECT 3 

USE Payments INDEX PayNo 

DELETE ALL FOR Amount = , 

* Set decimal place to 2 , send @ ... SAY to 

* printer and open BillProc procedure file. 

CLEAR 

SET DECIMALS TO 2 
SET DEVICE TO PRINT 
SET PROCEDURE TO BillProc 

* - Set parameters to printer and "not status" report. 
Printer = .T. 
Status = .F. 

* Loop through Customer database and print a 

* bill for every one 

SELECT 1 

DO WHILE .NOT. EOFO 

Lookup = CustNo 

DO PrintBills WITH Lookup , printer , status 

EJECT 

* Set next customer 

SELECT 1 
SKIP 
ENDDO 



r« 



* Done , Close files 

SET DEVICE TO SCREEN 
CLOSE DATABASES 
CLOSE PROCEDURE 

* Open ProcLibl procedure file 

SET PROCEDURE TO ProcLibl 

* — Print reminder about posting , then return to 

* — main menu . 
CLEAR 

TEXT 

monthly postings (main menu option 5) should be 

performed immediately after printing the monthly 

statements. 

ENDTEXT 
7 

@ 22,10 SAY "Press any key to return to main menu..." 
WAIT " " 
RETURN TO Master 

I^Uil ( BillProc.prg ) oUJ^JI OJL. f ljL^J g-.b^JI II* ^i A^^Ly 
£*M U# .Li ( ProcLibl ) >^l oljixJJI OL. g* ±^L U .aj^JI ^UiJI 

.X^JI oLL-> g-LjJ i~~?J\ 5-iUUI Jl ^JS ( RETURN TO MASTER ) 

.JlPljiU J-»> y* (6) fJj jLj^VI f lj»l^-l (.J^L-JU yi-Jj. jz> »^L-« 

( ARStat.prg ) aUll ^Ui-I ^.b* i - YN 



ji,U: UL> £-brf **il5 yi ( t ) f3j jLj^VI JUaI ait g-b^JI Li* r j 
j-jlj^JI j-u— j »i^> ^ J— k«JI Ul> jLii-L .Jik".,.»ll 7t— «j jj»j . £ ^LwJI ■-■! .1 ..,- 
2L.J.I »jj3tii\ {y* ^>l ijy* Js. J^^uJI aJ jt-i j*j .Ujujl-j j.jui jl ( Billed ) 
(True) 3~*JI (Status) ^Jtfll ,lk*l £-L^JI Ijl* ^ Ji>^ ..UuujuJ J^JI Jl 



r©\ 



* JUjJI jj|Jiii-> £*bjj >#jU3 

^j Jwi 2LJUJI jLii-l yb o.^JlUI i ( PrintBills ) ol>LiJI ^-U^ .J,*, ^^ 
: ZJLJI j^k-JI ,>-• oj^i) ( ARStatprg ) ^...._r g^k^JI li*j .ZJLtoJI »jjjiiJI 

in******************* ARStat org 

* Quick lookup of a single statement. 

* Called from A/R Print menu. 

* - - Open files and delete records with "0" amounts. 
SELECT 1 

USE Customer INDEX CustNo 

SELECT 2 

USE Charges INDEX ChrgNo 

DELETE ALL FOR Amount = 

SELECT 3 

USE Payments INDEX PayNo 

DELETE ALL FOR Amount = 

* — Set up memory variables for status report. 
Status = .T. 

Printer = .F. 
M_Cust_No = 
M_Name = " " 
Exiting = .F. 
DO WHILE .NOT. Exiting 

* print screen title 

DO Title WITH "Quick lookup of current status" 

* Get Customer by number or name 

SELECT 1 

DO GetCust WITH ; 

M_Cust_No , MName, M_Address, Exiting 

* Proceed with bill. 

IF .NOT. Exiting 



foY 



* Ask about printer. 

@5,0 CLEAR 

LP = " M 

@ 15,5 SAY "Send statement to printer ? Y/N ; 

GET LP PICT"!" 
READ 
CLEAR 

* Set up printer if necessary 

IF LP = "Y" 

Printer = .T. 

SET DEVICE TO PRINT 
ENDIF 

* — Print current statement for customer. 

SET PROCEDURE TO BillProc 

DO PrintBill WITH M_Cust_No , Printer, STATUS 

CLOSE PROCEDURE 

SET PROCEDURE TO ProcLibl 

* turn off printer 

IF Printer 

eECT 

SET DEVICE TO SCREEN 
ENDIF 
ENDIF (not exiting) 
ENDDO(while not exiting) 

* Close files and return to main menu 

CLOSE DATABASES 
RETURN 



for 



iJUjJI juljlwa. Ajbjj >J jll3 



( AgeSumm.prg ) Xyujllj i^ds&ll jj>UsII g-L* 6 - r\ 

U»w .*-*!! oLU> ^Ut; I*U, ^U^ i^l3 ,>- ( 3 ) j ( 2 ) jljU^yi 
J*j .( Aging Reports ) V-j jii^j ^-a^. Jj^s ^Uc J^ Jj-o^JL ^r.,,.11 

••^ l r° *i^JI j^IjaII «.U» jl>u Sale. UjLijI ^ jjjjUJI 

J^jJJ iJUJI fcjUll ^>c ( Summary Reports ) ij-aiiJl o^^ill ^UJIj 

J^iJL l^i»jH Jjj-aJL jjj^j ^^x. pJL. v^-> .*j ^LiJI >IjlJIj Oj-aJI uU^j 

.( v - r\ ) 

: jfttf viUij (CREATE REPORT) ^.Sf I r h^.l ^1 l^ .UjI ^ 

USE Customer 

CREATE REPORT ARSumm 





* t 




11/21/90 


rage iNu a 


1 Mohtfiiy Activily Summary 






^i^sP% 


4:i:-aM-K«c-:-:-M>-:->x-s<j-:-:w:-:-:- 


5^^fefev>>> o^ : . : i>^^£*>o> "- o^v: >'£:-:- ^;:^xv>^>*> 


•■^^i&j£ii££<->?- ^-.^Zi 


Cust. 
No. 


Name 


Current 
Balance 


Current 
Charges 


Current 
Payments 


Last Update 


1000 
1021 


Ahmed Salem 
Tarek Fathy 


80.00 
0.00 


180.00 
0.00 


100.00 
150.00 


02/30/90 
01/10/90 



^ffi^Sii^^^^^^w 1 !^---^ 50 ^ 



( V - YN ) J5Li 

L^J^li £_* pi ,^11 ( Assistant ) jlcULI £-»IJjj ^>\jj j^k; XJUJI »Ju» ^j, 
.( V - Y\ ) J£jJU £^>« jj> LS JJij .(Columns) »jua}|I oL>^* jujuj 

JiLiJL OwvjII Xj^aJL ^Jji^JI OJ^i "— s> J-?"**" 'J-* <-ijj-° *-3'.4 liLSva ol_^i 



fit 



*1U-H -i.IJ..,-. tAi* WJ Ua 



.( i ~ Y\ ) 

: j?M ( CREATE REPORT ) j/11 r lj^x-l ^ ^1 IJ* .Li;V, 

USE Customer 
CREATE REPORT Aging 

LfWl> ^ ^ ^1 ( Assistant ) JLtUll g-U* ^ip ^ ilUil *i* ^ij 
{ o - YN ) JSLJt ^j-. y» U v-Uij (Columns) Ul^cVI oL,i« ju**3 



Column 


Contents 


Heading 


Width 


Decimal 


Total 


1 


Cust_No 


CustNo 


5 





N 


2 


Tran[Cust_Name] 


Name 


26 







3 


StartJBal 


Current : Balance 


7 


2 


Y 


4 


Chg_Curr 


Current : Change 


8 


2 


Y 


5 


Pay_Curr 


Current : Payments 


8 


2 


Y 


6 


Last_Update 


Last : Posted 


8 








( r - n ) j£i 



Page No 1 



02/30/90 



Accounts Receivable Aging Report 



&^Mmmims,psm, ^mt^mmmm 



Name 



Current 
Balance 



30 days 



60 days 



90 days 



90 +days 



Customer Number 1000 
Ahmed Salem 

Customer Number 1020 
Tarek Fathy 



80.00 



0.00 



88.00 



98.00 



35.00 



90.00 



0.00 



130.00 



0.00 



200.00 



( i - Y\ ) J£i 



Vao 



d*k* *hP* 





Column 


Contents 


Heading 


Width 


Decimal 


Total 


1 


Trun[Cust_Name] 


Name 20 






2 


StartJBal 


Current : Balance 


9 


2 


N 


3 


Bal_30 


30 days 


8 


2 


N 


4 


Bal_60 


60 days 


8 


2 


N 


5 


Bal_90 


90 days 


8 


2 


N 


6 


Bal_90Plus 


90 + days 


8 


2 


N 





( o - r\ ) jsLi 

J^l fS, ^ L&sJ ^ ( Group ) jL3-VI f j^- *— .} £- J-jJI ^jj oi»yJj 
lift ji)aj liLIJbj ( Customer Number ) icj**»ll u'j^ ^^j *4 x - «^ t?**^ ^** 
.14>UjuI jA-JI j^ytJI bj-* Cr° t^ ^ ^** ^ f J**** 1 (* 5j *^ ,i, -^ jJI 



ijJI j-yUtdlj ( Summary Reports ) e^-aiUI j^yLiJI Zj.LJ» p_iy 



jlu*^J j>UI f IjLi^-l £* ( AgeSum.prg ) g-U^JI f Ij^-L ( Aging Reports ) 
i*LUI £-Li^ ^ »a>>>U 3LJUI >•!/!" >* »sUS c-^y .^jJ^I ^izll g>i 

.( ARPrintprg ) 



CASE PChoice = 2 

RepForm = "ARSumm" 

DO AgeSumm 
CASE PChoice = 3 

RepForm = "Aging" 

DO AgeSumm 

♦/IJJI jjsj, ^ ( ARSumm ) US' &>* re ( 2 ) r 5 -^ r* 1 - 11 J 1 ^' ^ 
li* ^ ^ ( Aging ) Jul* w>3 pi ( 3 ). f 3 J U »jW^I -u*j •( RepForm ) 
JSL ^UJI j^ytJI LtLt pi ^UJI -,> ( AgeSum ) g-M .Lis" ^*j .^' 

.ill* 



ro-\ 



*!L>H juUvo. £*U* ^rfjUa 



: jfi\S g-»loJI '•** jA- its' ^ 

******************** *AgeSumm.prg 

* Print aged balances or summary reports. 

* Called from A/R Print menu. 
@ 5,0 CLEAR 

* Ask about printer 

STORE" "TO LP, Mac 

@ 15,5 SAY "Send report to printer ? (Y/N)" GET LP PICT "!" 

READ 

* Set up the printer if necessary. 

IF LP = "Y" 

Mac = "TO PRINT" 

WAIT "Prepare printer.then press any key to print" 
ENDIF 

* Use Customer database and report stored in 

* RepForm 

CLEAR 

USE Customer INDEX CustNo 

REPORT FORM & RepForm & Mac 

* Pause , if necessary , then return to menu 

IF LP # "Y" 

WAIT "Press any key to return to AR Print menu." 
ELSE 

EJECT 
INDIF 
RETURN 



*1U»JI juiJLtA. ^Aiyi j-jjlla 



jLjsI yw-o- ( RepForm ) j-jdll jl£-« ( AgeSumm ) L^«j J ( ARSutnm ) 
lil ( Mac ) jJttll otS^o ( TO PRINT ) v^ 1 *LUL ^h^l ^ US' . f oiiJll 

REPORT FORM ARSumm TO PRINT 

( ARHist.prg ) V^bll ^^ ^ - YN 

^|fe.i ZJ(j»JI bin ^j .f^L^AJI oLL-> jjj& JxLt p^jJ 2u~-jjJI 2-jUJI ,>• ( 5 ) 

.( n - YN ) J^Lltl Z*^! JL^UJI 



1 History Menu 02/20/90 08:30:45 f 



KpMMWWJTOfrmWMpW^^ 



SXfSS5«K8RR8S^XW« : S*J« 



1. Search by Customer Code 

2. Search by Product Code 

3. Search by Data 

4. Return to main menu 

Enter choice ( I - 4 ) 



( *\ - r\ ) j£a 



JiLiJL i«j,jll .j^L J^jJI IJLfi JL-.UJI V^ 1 ^ L M £a-* A^ ^J^ 1 
.*j ^> .> <>-S> '^ u^ ^JtJI Ol J^l U* >* ^>^ •( V - YN ) 
«i-> .( CREATE REPORT ) ^.Ml f L&i-L ^^ ^^ .Ltil yOko &*j -J^ 
,>© •j'-SJ' r-Li ( CusHistl.frm ) Oill f \±*£-L yj&\ &* tfjWI >^ **M» r* 



tlLall rrAim,\ £*lij4 j-JjUt* 



USE ChrgHist 

CREATE REPORT CusHistl 

^Ujj U& JJ »;.UjJ j~* ,^JJ! ( ChrgHist.dbf ) «-Ull f L»»iJ L* JwOly 

Lfi^J? &£■ jn^ tyill ( Assistant ) jlaLJI g-*IJ>; ,*Jl>i ^^k; SJUJI »JU ^j, 
: ^IS" Lua\I oLp»<-« jlu*3 ^ US' .( Customer History ) jj^JI jlyx. jLa»j 

( Check_No ) . ( Part_No ) . ( Qty ) . ( Descript ) . ( Unit_Price ) . 
( Amount ) . ( Date ) . 

.( V - Y\ ) JSLlll jjt jsJjuj IS ~>x^N\ (^jjLlc. jui^w *z> LS 









Page No 1 


;^®'i^^&ii5j^fipj^^^^^ 


11/21/90 









Gll$t - 


Part ^ 


^QtyJ; 


^PescriptjpM. 


IfenceJ 


I1IM 


|pba1te||| 


1000 
1000 


BBB 
AAA 


5 
2 


Floppy Disks 
Printer 


1600 
900 


80.00 
1800.00 


01A30/90 
02/05/90 




Check. 


i;-;Dji|qriptip|[i||lS 


HSM^iiH 


liifjt^liil 


1000 
1000 


1333 
1750 


Payment 
Payment 


100.00 
200.00 


02/06/90 
02/29/90 



{ V - n ) J5Li 

ny -J— * jl '-if; u^W -ui-JI oiS^ jLcj _^j j^^JI £_, JjLJI t>! j| ui 

•O-Jlsll &J*~i\ ^ 0Lii{ fi ^JJI ( CusHist2.frm ) OUI ■ Jk-lj, *^&s 



foA 



slLtaJI .aiLLu^ >Jliji J^fj" 3 



USE PayHist 

CREATE REPORT CusHist2 



juji^j l*J}U &> fa ^.LbjVI s~* LS Jibuti gj»\j y f\Ji j^Sic ZJUJI J* ^ij 



( Cust_No ) . ( CheckNo ) . ( Descript ) . ( Amount ) . ( Date ) 

.( V - YN ) JSLiJI ^ £&j IS UufcVl 'U* ^jLt jbj*w ^ U" 

^j .( Partno ) ^jl-JI II* pj, JUal ^ dJilj .,>**» «_*i*. ^* vjjIkLI ^j^iJI 

.( A - Y\ ) JSLUt jci.jil y Jd\ ^j XJUJI u* 





Page No 1 




11/21/90 


I MdliM 






i ss^^^^^^ite^^»^S^^^* 


tmmmmm&mmummm 


Part 
; No. 


Description 


Qty 


Uint 
Price 


Total 


Date 


1 AAA 
AAA 
AAA 


Printer 
Printer 
Printer 


2 
3 
5 


900 
900 
900 


1800.00 
2700.00 
4500.00 


02/05/90 
02/10/90 
02/20/90 


l:i^^S^SlS^^^^^^^BS^i'^^^K^I^ 1 



(A - YN ) J5Li 



USE BillHist 

CREATE REPORT CodeHist 



rv 



«U»I juLLu. £jb* ^jUj 

o^ Utf ^ ( Assistant ) jl*UU ^b^ L-UJI oljL^-VI pJlp ^ xu^j 

: ^tf ( Heading ) y j&\ 

( Product Code History ) 

: j?i\S ( Columns ) »ji**VI oUp^« JjJ*o ^j US' 
( Part_No ) . ( Descript ) . ( Qty ) . ( Unit_Price) . ( Amount ) . ( Date ) 

.*ij*e> Jjuw iij*-»j dc~a Ji" <J3j-» SjuLi* ^ jiJ^^ '■** ■*-«£} 

v^ 1 1^ 1 J^k 

OJL1I i-L-l^ »jl"^! f^i JL^ 1 «>*" -.>^J^ .>^ oj-*~! .rir*^' '■*-*> 

: ^Ul &JU\ VcS &J* ^ dJS p^ ( DatHistl.frm ) 

USE BillHist 

CREATE REPORT DatHist 

jjjL«3 ^ U 1 ^jLJI «>«AJ ( Product Code History ) jlj-^JI *-As£ ^a 

: Jj LJ" ( Columns ) Jju^I oLjiw-o 

( Date ) . ( PartNo ) . ( Descript ) . ( Qty ) . ( UnitPrice ) . ( Amount ) . 
( Cust_No ) 

L,US^ dUi ^ .( DatHist2.frm ) aJll jlLJ^j tj\j^[ ^ Ji-JI «^lj 

: t > s Jlill (^J^la-JI 

USE PayHist 

CREATE REPORT DatHist2 

n\ 



( Date ) . ( Check_No ) . ( Amount ) . ( Descript ) . ( Cust_No ) . 

: jfttf oUi, .^liJI d* ^ ^ J* U.\J, J| ^ ^jj| ^li^JI 

********************** AT?jjj s t nre 

* Search history, and current charges and payments 

* files and display summary data. 

* Called from AR Print Options menu. 
HChoice = 

DO WHILE HChoice # 4 
CLEAR 

DO Title WITH "History Menu" 
TEXT 

1. Search by customer code 

2. Search by product code 

3. Search by date 

4. Return to main menu. 
ENDTEXT 

@ 24, 1 SAY "Enter choice (1 - 4) " 

GET HChoice PICT "9" RANGE 1,4 
READ 

* Set up search macro accordingly. 

@4,0 CLEAR 
DO CASE 

CASE HChoice = 1 

M_Cust_No = 

@ 15,5 SAY "Enter customer number" ; 
GET M Gust No PICT "99999" 



f\Y 



tJU.il juLUa. ^li* >rfjULl 



READ 

LookAT = "Cust_No" 

LookFOR = M_Cust_No 

RepForml = "Cusffistl" 

RepForm2 = "CusHist2" 

SET EXACT ON 
CASE HChoice = 2 

M_Code = SPACE (5) 

@ 15,5 SAY "Enter product code" ; 
GETM_Code 

LookAT = "UPPER(Part_No)" 

LookFOR = UPPER(M_Code) 

RepForml = "CodeHist" 

SET EXACT ON 
CASE HChoice = 3 

M_Dat = SPACE (8) 

@ 15,5 SAY "Enter Date " GET M_Date 

READ 

LookAT = "DTOC(Date)" 

LookFOR = TRIM(M_Date) 

RepFlrml = "DatHistl " 

RepForm2 = "DatHist2" 

SET EXACT OFF 
CASE Hchoice = 4 

SET EXACT OFF 

RETURN 
ENDCASE 

* Ask about printer. 

@5,0 CLEAR 
STORE" "TOLp.Mac 
@ 15,5 SAY "Send report to printer ? (Y/N)" ; 
GET LP PICT"!" 



nr 



READ 

IF Lp = "Y" 

Mac = "TO PRINT" 
ENDIF 

* Search billing History file 

USE BillHist 

SET FILTER TO &LookAt = LookFor 

COPY TO Temp 

USE Temp 

APPEND FROM Charges FOR & LookAT = LookFOR 

SET FILTER TO &LookAT = LookFOR 

REPORT FORM &RepForml &Mac 

* if not searching for product code , Search 

* Payments files 

IF HChoice # 2 

USE PayHist 

SET FILTER TO &LookAT = LookFOR 

REPORT FORM &RepForm2 &Mac PLAIN NOEJECT 

ENDIF 

* IF report not going to printer, pause. 

IFLp#"Y 

? 

7 

WAIT 
ENDIF 
ENDDO(HChoice#4) 



ru 



,ltUJ $j±Ai\ .Sj-inlll 



<** ^A*llj ^HJI J^lli 



(sU^ju ^>u^r Cu**»jr 



no 



f uuu jj*ah ^,**aoii 



j.LkJJ j^LlI J— a->dl ^*Li^ J-*-i3 p-~; «— 1» *^—*JI oLL-» J-oLJjJ !_■ , ^ 1 

: cA r-^ ***" ( Post P r g ) 

liUj ^ £\ ji U* ^ • jl L.JJ ^ J L^ &£&_&> fcjljll oliLv Jil - \ 
vij~ ( REPLACE ) ^i\ r L*i-L *iUjj vw/JI J* XiLJI S^iiJI ^U ^ 

( v ) j>u isjyi ja> ji 1** ( r- ) j*> zjjijii j*. oll, jjclj 

LMi M- ) J*. *JjljII Ji> J! L.ji ( V ) J^ iijljll Ji> dLu L.^ 

tr --JjJI wiAll w^jjl»w ^ ^ .( Summary.dbf ) cr ^.^ jujl* oLiU 
^Vl f LL_*z-L, ( Summary.dbf ) <-Ul\ £_. ( Master.dbf ) 

.( UPDATE FROM ) 

JJ JUj ( Billed = .T. ) Ujujl-j ^ ^sll ^IjJJL i^UJI c£U-JI Ji - - r 
j^JI 3i> oi* ^ j-^jj ( BillHisUbf ) ,>^UJI J^l.oJL. 
.j^JI ^ilJ j^i ss> JL. j^ dUi, ( Charges.dbf ) 

r;<V-( Payments.dbf ) jujljJI a> jL. J* *JL*JI a* ^jj JL0L3 ^ - £ 
ao-sJI ol. jj ( Posted = .T. ) l«JL>^ ^ ^J| o^U-JI ^ jjj 
a*l-sII ii> uLU ^ L^u-^ ^ L^ ( PayHistdbf ) ^J^Lsll 

.(Payments.dbf) 

oL > ^- J..U3 ^ Uau-3 ^ ^Jl jji^ui o^U- J^p ^ .Lpyi juu - 
,i * toJ > T £i> b J*"' ^-^J ( Starting Balance ) jfdU Lslxtfl Ujl^ll Ji. 

.( REPLACE ) ^.Vl f Uii«L ( Last_Updat ) 



S-L* ^Id ( Password ) j^— JLJtf r L*i.L LbJ ^.b^JI fJ JL 
US' f LicJ r - ^ .Jp^ ^i ^^ it-ljN* -^ ■„> oLLJI J_>^ 
^ ^ l>j .^>i Uf rf f f lAs-l o^A^. iJS^ ( Mohamed ) 



- "\ 



riv 



sUalU ,j^UUI »■_-»— l i|| 



I^J- UUI & 151 *-> IS, i>b o5 ^jl-JIj o^JI iS>J ^^ill J^|| 

* Show progress 

@ 20,1 SAY "Aging the balances : Record" + ; 
STR(RECNO0,4) + "OF" + STR(RECCOUNT() , 4) 

Aging the balance : Record 2 of 100 

*-L* .1^1 j*. ^ ( Record ) 2LJKJ JUI ijujl jy, j^ jy j£ ^j 

: ^VIT ol^ ^ (Post.prg) g-b^Jlj 

********************** p 0S j. __„ 

* Posts summarized monthly accounts to the Customer 

* file. Called from AR main menu . 
SET DELETED ON 

CLEAR 

DO Title WITH "Monthly Posting" 

* Display and get password 

TEXT 

This is the program to post Payments and charges. 
Be sure you have printed all the monthly invoices 
before proceeding with this program. 

ENDTEXT 

Password = SPACE(7) 

@ 15,12 SAY "Enter password to proceed" GET Password ; 
PICT "!!!!!!!" 



r\A 



jjAAM jU-fJtoJA* 



READ 

* If proper password not entered return to the 

* menu. 

IF Password # "MOHAMED" 

? "Illegal password" , CHR(7) 

SET DELETED OFF 

RETURN 
ENDIF 

* - - Do the posting,first,shift all current 30 , 60 

* - - and 90 day billings "back" one field in the customer file. 
@ 20, ISA Y "Working...." 

CLOSE DATABASES 
USE Customer 
REPLACE ALL ; 

Bal_90Plus WITH Bal_90Plus + Bal_90, ; 

Bal_90 WITH BAL_60, ; 

BAL_60 WITH BalJO, ; 

Bal_30 WIHT Chg_Curr - Pay_Curr 
REPLACE ALL ; 

Chg_Curr WITH , ; 

Pay_Curr WITH 

* — Now.create summary of the charges database by customer number. 
SET SAFETY OFF 

USE Charges INDEX ChrgNo 
COPY STRUCTURE TO Summary 
TOTAL ON CusUSTo TO Summary FIELDS Qty, ; 
UnitPrice .Amount FOR Billed 
Now update the customer database current balances 

* - -with data from the charges summary file. 



r\\ 



* 



/ItiU iJ> jlJJI »-j— !-» 



SELECT 1 

USE Customer INDEX CustNo 
SELECT 2 
USE Summary 
SELECT 1 

UPDATE ON Cust_No FROM Summary REPLACE Chg_Curr WITH ; 
B - > Amount 

* Move all posted transactions to the billing 

* - - history file 
SELECT 2 
USE BillHist 

APPEND FROM Charges FOR Billed 

* Then empty the current charges file. 

CLOSE DATABASE 
USE Charges INDEX ChrgNo 
DELETE ALL FOR Billed 
PACK 

* - - Now , summarize payment totals for each Customer 
USE Payments INDEX PayNo 

COPY STRUCTURE TO Summary 

TOTAL ON Cust_No TO Summary Fields Amount FOR Posted 

* - -Now update the customer database current balances 

* - -with data from the payments summary file. 
SELECT 1 

USE Customer INDEX CustNo 
SELECT 2 
USESummary 
SELECT 1 



rv< 



,U»UI j>*d)l ■&**"*»* 



UPDATE ON Cust_No FROM Summary REPLACE Pay_Curr ; 
WITH B-> Amount 

* - - Append all posted transactions to the payments history file. 
SELECT 2 

USE PayHist 

APPEND FROM Payments FOR Posted 

* Then empty the current payments file. 

CLOSE DATABASES 
USE Payments INDEX PayNo 
DELETE ALL FOR Posted 
PACK 

* — Then update the 'last billed 1 and 'starting 

* - - balance' Fields in the customer database. 
USE Customer 

REPLACE ALL Start_Bal WITH Start_Bal + ChgCurr - PayCurr 
REPLACE ALL Last_Updat WITH DATE() 

* Adjust aged balances. 

GO TOP 

DO WHILE .NOT. EOF() 

* Show progress. 

@ 20,1 SAY "Aging the balances : Record" + ; 

STR(RECNO(), 4) + "OF" + STR(RECCOUNT0, 4) 

* IF no payment, skip calculations. 

IF Pay_Curr < = 
SKIP 
LOOP 
ENDIF (Pay_Curr < = 0) 
* Otherwise , subtract the payment 



rv> 



More = .F. 
NextBal = .T. 
IF Bal_90Plus > 

Remain = PayCurr - Bal_90Plus 
IF Remain > = 

REPLACE Bal_90Plus WITH 
More = .T. 
ELSE 

REPLACE Bal_90Plus WITH ABS(Remain) 
NextBal = .F. 
ENDIF(Remain > = 0) 
ENDIF(90+ > 0) 

* 90 days. 

IF NextBal .AND. Bal_90 > 
IF More 

Remain = Remain - Bal_90 
ELSE 

Remain = Pay_Curr - Bal_90 
ENDIF(More) 
IF Remain > = 

REPLACE Bal_90 WITH 
More = .T. 
ELSE 

REPLACE Bal_90 WITH ABS(Remain) 
NextBal = .F. 
ENDIF(Remain > = 0) 
ENDIF (NextBal & Bal90 > 0) 

* 60 days. 

IF NextBal .AND. Bal_60 > 
IF More 

Remain = Remain -Bal 60 



m 



j^AJdl jbLjJaajJI 



ELSE 

Remain = PayCurr - Bal_60 
ENDIF(More) 
IF Remain > = 

REPLACE Bal_60 WITH 

More = .T. 
ELSE 

REPLACE Bal_60 WITH ABS(Remain) 

NextBal = .F. 
ENDIF(Remain > = 0) 
ENDIF (NextBal & Bal60 > 0) 

* 30 days. 

IF NextBal .AND. Bal_30 > 
IF More 

Remain — Remain - Bal_30 
ELSE 

Remain = Pay_Curr - Bal_30 
ENDIF(More) 
IF Remain > = 

REPLACE Bal_30 WITH 
More = .T. 
ELSE 

REPLACE Bal_30 WITH ABS(Remain) 
NextBal = .F. 
ENDIF(Remain > = 0) 
ENDIF (NextBal & Bal30 > 0) 
SKIP 
ENDDO(endoffile) 

* Display closing messages 

CLEAR 



rv.f 



f |fclU jjAAB •.j.-yiM 



? CHR(7) 
TEXT 

The posting procedure is complete. Use option 4, 
from the main menu to print current monthly 
summary and aging reports. 

ENDTEXT 

* Get rid of any old keypresses. 

CLEAR TYPEAHEAD 

WAIT "Press any key to return to main menu ...." 

* Return to the mavi menu. 

SET DELETED OFF 
CLOSE DATABASES 
RETURN 

& ;l*uji oLL-^ji IuLj j» ( if y ^>\J\ u^ f la=j g-b^Ji ^ j^^Ly 
^ju II* jli ( Pay_Curr < = ) ^i sjujl* 2^3 J\ jujuj ^ [ lj| y&j .iiu 
dJi utt>j .JLJI J-uJI. Jl JLzaVI ^ dJJJ, Ujl^l v ^lk, oLL-> dL* c-J Mji 
k^ V ,>- ^iSt, L-jj ( \> ) j Ujj ( V ) j L.^ ( r- ) oU-» iui, ^ 

•JjJuj ,*3 ^Ul ^JLJLI jlS" lili Ja^l SJL*:-^* (Remain ) ^-jtdl f U*iJ ^ 
oLL»*JI »JLffi ^-JLaj pZj ULJI »JLa ^ L.jj \- &j> j4\ jujjlUI oLL-*JI ^^j 
( V ) jUjiM-.) olL^JI ^L J* jj^ll ^ USU, .( |>L, ^jLj L^U* ) 



Ji> 



,U£JI 



,^-ft j». V > tT ... n il SJLuij ^j-C- *-Xj c^LajJI g - j t > I— »L« «» j_« «t^l5"yi JLLtj 

.4....,,yi LJUJI Jl Si^Jlj olilll £*» ,£U{ ^ ^ A^ilail 



rvt 



,jU» » *JL«» iiU-a. &H J*Uoll &Ai M 






rvo 



j jUil j «lLaM *LU* ^ JllaX ^jUj* 



dJi JujLJj -jjUIl ^U^j .^LaII oU— > g^lj^ Jbj ^ £-«lW ij> ^ 

oli-^l oL*f ,>* o^-aJI *S> ^ IfJUoJ p ,>JI .JL-^I oL-S" £> ^ - ^ 

.(Master.dbf) tr «^ P II jjUJI uiL. ,> ; 4>?J ll 
( Master.dbf ) iJ ^>J\ jjLkil ^iL* JI IfU.^ ^ ,/JI o^U-JI j^ ^ - T 

aljuJI **> ji .^LjJI oLL-> £-bjj ,y ( Charges ) o^JI 3S> jLsl ^ - r 
•OjU-U ,s~jj\ ^Lll JI l^JUjj J-5 ( Payemnts ) 

£**ji ( Charges.dbf ) .J^-aJI itf^> «jLo JI jua> ^j» ZjLj»I w>»j JuloJI ^j 
^ JJfeJI Ul>j .V f i ijUll ^iJL. JI *JL>>i ^ jL» Jjk-JI oli" lil g-LjJJ 
US' ,p ^-jj* Jjl ( In ) oLi^JI JJLu, v^* ( InPost ) * ..■■■■}, UskL- }U> 
^ U" .( MODIFY STRUCTURE ) ^1 f ljLJc^L dUi ^ ( Inventory ) 
..^JLj j^a, t/ i> ( BillHist.dbf ) tr iw»UI o^-JI ^iJL. JI JJfcJI ^ iiLi.1 
.^LJI oLL-> JL. JI l^JUj: ^ ^1 o^-JI J.i?. Mj ^iUI Li* J ^ .y^JI 

.( Customer, dbf ) tr - s ;yi 

.Jlo JI A^iL&j i^j jujl> J^w Ji" ^1 jlJIiJI ij^j J->>JI LJLx. o-i-^J 
^ J! 4*> ri f *>i e-li^JI fl*i «=> »j-—3 ^ ( Charges.dbf) «J,-JI SS> 
£-^ J! oe-« >~ «>^I Ji> ^ «iUJ pj •( Master.dbf) ^^>J\ ujUJU 
ri «~» "^*JI J*-JI *J^k u*»^JI «_*JI ^ ( NewChrg.prg ) .}U*JI iiU,l 

: JUI >-JI JSUI 



REPLACE InPost WITH .F. 



: jfttf g-UjJI o- <y*i\ IJl* £-~Ay 



IF .NOT. Exiting 
SELECT 2 
APPEND BLANK 
REPLACE Cust_No WITH M_Cust_No 

rvv 



c^Ull j xlb«ll aLLa cnH J*l£aJI £<b* 



REPLACE Date WITH DATEO 
REPLACE BiUed WITH .F. 
REPLACE InPost WITH .F. 
SET FORMAT TO FNewChrg 
READ 

CLOSE FORMAT 

REPLACE Amount WITH Qty * Unit_Price 
ENDIF 

ji^JI oL-j ( Charges.dbf ) o^-JI iS> oL. ,>. ( InPost=.F. ) l^U^ ^ J 
^ (True) J{ (Inpost) £jju*JI Ji> ^-J* rJ L L5" ( BilHist.dbf ) ^Ul 

OjUJLI uiL. vioJi^w ^ tfill g-objJI >* ( Updater.prg ) g-lo-JI o' «~>j 
a*J >T ^U^ J-JLis Jl ^i>j ^-b^JI li* Jl >- oL*l fi ijUU ..j-^JI 
ZiL*l *Xij .ti^-JI 3tf> oUL. ,>* y-w^l «Jlll u^ i.^«i ( ARUpdate.prg ) 

: "&L. tyVlS' ( Updater ) C^j^JI tJU ijl^ J-j >-JI li* 

DOARUpdate 

: UUJI jjJLJ' <>• 0^ ( ARUpdate.prg ) g*ls*ilj 

****************** *ARUpdate.prg 

* Update the master file from charges and BilHist. 

CLEAR 

? "Updating from the A/R System .." 

*_.__-_ Use the charges databases. 

USE Charges 

* Copy nonupdated records to Temp File. 

COPY STRUCTURE TO Temp 
COPY TO Temp FOR .NOT. InPost 



fVA 



^jLUI j <]U1I ^U-a ^ Jjl&aA £*l>.« 



* Now get the recrods from Bill Hist. 

USE Temp 

APPEND FROM BillHist FOR .NOT. InPost 

* Get the Temp file sorted by part number. 

INDEX ON Part_No TO ARIndex 

* Use the Master file for updating . 

SELECT 1 

USE Master INDEX Master 

SELECT 2 

USE Temp INDEX ARIndex 

* — Update Master from the temporary A/R file. 
SELECT 1 

UPDATE ON Part_No FROM Temp REPLACE Qty WITH ; 
Qty-Temp-> Qty 

* — Use the origingal charges database file 

* — change all posted fields to true 
CLOSE DATABASES 

USE Charges 

REPLACE ALL InPost WITH .T. 

* Do the same thing with BillHist file. 

USE BillHist 

REPLACE ALL InPost WITH .T. 

* Return to the updater command file. 

RETURN 



m 




JM4&/I ty*tt 




I £l$jftl Jfl-JU 



aI&*&jI aJa& $Jb>i 



^ J tXw ^/Jl ( Advanced Tools ) I*jl£1I oljaVl j-» Sx>**<-«i ^ jl*j «j*JI II* 

.»>Ut{ iSj^-i <J^ p-°^vr" ««Li^ 0-* J ir' '-^' U'i* ^JJ •*$*■ u-° r >~" , T IJ 

,>* ,AJC— II ^SLj £*U^ ^Jj Jjhfl J-aiJI Jj-oj AjILj ,>* «>»JI lift oj&J) 

.*->£ OjUSI **;13 J&- ,>« J ij-Ull o'^" jLr^-l fjii-JU £~L, IS ..JiiiiJU 
jiy» d-j"Zi fJ&i-JU £*-J oIjLj^I |»;Ij5 niLrti g^UJI -tl»J jc-Ij liJUl J-oillj 



fAr 



sM^AU aJaii ^>j 



^>A*Jlj tfljl J±aAJI 



G*\iji 



VAft 



•e-M J*- o- ^u^ 1 1 * L > Ji ^ W JJa ^ £^ ^^ r^ «* 
J* UJ ^^ Lf o^ i^mi £uu ^' f^ 1 J* U ^ JI ^-^ u " Uj 

: ^-Stf OUT jA (950) fjj\ ^ .^Jl 1^ ij^U;l i+j, 
Nine Hundred and Fifty 

JJU d~iJI ,y IfjUi" ^ J$\ SjiJjJI i*u)l L»-i*- o^ g-'l^JI u' «i»i>j 
ait iuvJI •ju- j ' J! iJUi J 5 " iJi*^ pW "k^ J* ii**-* 11 i^^ J* £r*i 

.*LU1I U^JI > lj ^' J! ( 999,999.99 ) j?> 
*l,Jb &£■ w ^ liLill ajUSJ oULj JjuIj »_iLi .Liil "ij\ ^j viUi £j-»jiJj 






Field 



srj^fw^tE" 



^"■■-A--*- S^vWBgp£feljy-'^ -Vw^* 



Field Name 






Type 



Width 



WM&1M& 



Dec 



1 
2 
3 
4 



CHECK_N0 
T0_WH0M 
AMOUNT 
DATE 



TOTAL 



Numeric 
Character 
Numeric 
Date 



5 

25 
9 
8 

48 







2 



( \ - Yt ). JSLi 



VAV 



iljLtVl ^ iJ-t JXI ^J^JI JAUI ^^^ -tfji ^^ ^L^JI JuLtf J^jj 
j ( Thirty ) JJ> ol^UI f Uiji eUtfj i^li ol^-si. ^i j^^i* Jl jl^Ij ^ 
.( Memory File ) i/lS o»L> ^i olj-isll »I* .^jij ^ LS" £JI .... j ( Fourty ) 
: JUI £*bjJI J5U ^_* »jLijl ^ ( English.mem ) *«-J »JUI Li*, 

**************** *Enelish.ore 

* sets up memory file for storing English equivalents. 

CLEAR 

? "Creating English.mem file with English for numbers" 

7 

SET DEFAULT TO C 
SET TALK ON 
CLEAR MEMORY 
U = "" 
Ul = "ONE" 
U2 = "TWO" 
U3 = "TREE " 
U4 = "FOUR " 
U5 = "FIVE " 
U6 = "SIX " 
U7 = "SEVEN " 
U8 = "EIGHT " 
U9 = "NINE " 
U10 = "TEN " 
Ull = "ELEVEN " 
U12 = "TWELVE " 
U13 = "THIRTEEN " 
U14 = "FOURTEEN " 
U15 = "FIFTEEN " 
U16 = "SIXTEEN " 



VAA 



.uli^UI aJafc £*b* 



U17 = "SEVENTEEN" 
U18 - "EIGHTEEN" 
U19 - "NINETEEN" 
U20 = "TWENTY" 
U30 = "THIRTY" 
U40 = "FOURTY" 
U50 = ,, FIFTY" 
U60 = "SIXTY" 
U70 = "SEVENTY" 
U80 = "EIGHTY" 
U90 = "NINETY" 

* Save all variables to English, mem file 

SAVE TO English 

CLEAR 
7 
7 
7 

SET TALK OFF 
RETURN 



i^ill ( English. mem ) i^SUJI «jL. «Li;l Jl ^ajj g-^U^JI li*, 

( U30 ) j ( Five ) JJ^ ( U5 ) ^JUi *L^c ^^AUI ^1 Ji« ^ *JL, ( U ) 

.IJ£*j (Thirty) Jl^ 

: JUI >JI Jul* ^ »/|jJ| ^i ^iUI II* J~*cSj 

RESTORE FROM English 



rA^ 



^b^JI J\ ( Procedure File) ol_^JI uiL. .Liil ^* dUi juu JJUI s>iJlj 
( Translat.prg ) *-»-j ^^' '-^j -<J tA^ 1 J^Ull Jj aji*. ji i^.^ f yL, jill 

**************** Translat ore 

* Procedure to convert a number to English 

* equivalent. 

PROCEDURE Translat 
PARAMETERS Number, English 

* Set up memory variables 

Counter =1 

Start = 1 

String = STR(Amount, 9, 2) 

* Loop through thousands and hundreds 

DO WHILE Counter < 3 

* Split out hundreds , tens and ones. 

Chunk = SUBSTR(String, Start , 3) 

Hun = SUBSTR(Chunk ,1,1) 

Ten = SUBSTR (Chunk, 2, 2) 

One = SUBSTR(Chunk , 3, 1) 

* 1 Handle hundreds portion. 

IF VAL(Chunk) > 99 

English = English + U & Hun + "Hundreds" 
ENDIF 

* Handle second 2 digits. 

T - VAL(Ten) 
IF T > 

DO CASE 



rv 



juU^&u iXtii ^Jbji 



* — Case 1 : handle even tens and teens 
CASE (INT(T/10.0) = T/10.0) .OR. (T > 9 

.AND. T < 20) 

English = English + U & Ten 

* - - Case 2 : Handle greater than 10 

* — but not evenly divisable. 

CASET > 9 .AND. (INT(T/10.0) # T/10.0) 
Ten = SUBSTR(Ten, 1,1) + '0' 
English = English + U & Ten + ■ " ; 
+U&one 

* — Case 3 : Handle less than 10 
CASET < 10 

English = English + U & One 
ENDCASE 

ENDIF (T > 0) 

* — - - Add "Thousand" if necessary 

IF Amount > 999.99 .AND. Counter = 1 
English = English + "THOUSAND" 

ENDIF (need to add "Thousand") 

* Prepare for pass through hundreds. 

Start = 1 

Counter = Counter + 1 
ENDDO (while counter < 3) 

* Take out ratios 

IF INT(Amount) > 

English = English + "And" 
ENDIF 
English = English + SUBSTR(String, 8,2) + '7100" 

: Jlsll >-J| JUL* &J, ^ >T ^ J ji.| 4 ^ bjr j| q. f hic J ^ 



r*\ 



SET PROCEDURE TO Translate 

M_Amount = 9845 

English = " " 

DO Translat WITH M_Amount , English 

: J\si\ jJLJI U&j aJij ( English ) s/UII uAL. ^ oUi Jj v^y 

RESTORE FROM English 

-J-KJL •sL^JI itU* Jl tf4 ji t*M g^loJI *;^j -£-M JLs>[ **- islUjj 

: JJUI j>-JI JjbT ^ 

* Sample program to write checks 

CLEAR 

SET TALK OFF 

SET SAFETY OFF 

SET PROCEDURE TO Translat 

* Bring English equivalent variables. 

RESTORE FROM English 

* Use the checks database 

USE Checks 

INDEX ON CheckNo TO CheckNo 
7 

? "First Check to be printed will be", Check_No 
? 

9 



m 



WAIT "Press any key to begin writing checks" 

CLEAR 

SET PRINT ON 

GO TOP 

DO WHILE .NOT. EOFO 

* Translate Amount to English 

M_Amount = Amount 

English = ■ " 

DO Translat WITH M_Amount , English 

* — Print the check with required modification 

* for the check 

? ■ " Date 

? 

? To_Whom, " " , Amount 
7 

? English 

? 

? 

? 

SKIP 
ENDDO (not eof) 
SET PRINT OFF 
CLOSE PROCEDURE 
CLEAR MEMORY 
CLOSE DATABASES 
RETURN 



L>-SLo ( Amount ) jJLJI J^- jjZ»u olSLi JUL!? Jl ^a^j g-oUyJI 11*. 



tsr 



JjOl jl^l ^b* 



^^JJLbJIj (ji^UJI JjaDI 



ur^-jvr jL^r 



n« 



Jj&l jLa^l pb„ 



jUSL ^0 *7 ,,.. II ^L-Jlj ZiL^JI jljJVL 2*5l3 ^^ jj^k ^ aili> .( Highlights ) 

.( \ - Yo ) JSLUI >l Sylkil il/^l 



EXECUTE PROGRAM 
YELLOW ON BLUE 
BLACK ON YELLOW 
WHITE ON READ 
YELLOW ON BLACK 
WHITE ON BLUE 
BLUE ON WHITE 
RED ON WHITE 
BLUE ON YELLOW 
MONOCHROME 



( \ - Yo ) J£i 

: j/jfir jits' ^ ( Colors.prg ) ^b^JI Li* 

*********** ******* Colorsprg 

* to give the user the colors he needs. 

CLEAR 

SET TALK OFF 

SET STATUS OFF 

* Set up loop for displaying the menu 

DO WHILE .T. 

* Draw a box 

@ 1,24 TO 3,50 DOUBLE 



c£~u 



nv 



jjtsa jL^l*i ^.l,^ 

* - Set up loop for drawing a frame inside the box 
R = 6 

DO WHILE R > 5 .AND. R < 20 

@ R,22 SAY REPLICATE(CHR(178),31) 

R = R+ 1 
ENDDO 

* Erase an area from the box 

@ 7, 24 SAY CLEAR TO 18,50 
@ 5, 21 TO 20,53 DOUBLE 



* Display the menu." 


@ 2, 28 SAY "Select Screen Colors" 


@ 8, 25 SAY " - 


Execute Program" 


@ 9, 25 SAY " 1 - 


Yellow On Blue" 


@ 10,25 SAY " 2 


- Black On Yellow" 


@ 11,25 SAY "3 


- White On Red" 


@ 12,25 SAY " 4 


- Yellow On Black" 


@ 13,25 SAY " 5 


- White On Blue" 


@ 14,25 SAY " 6 


- Blue On White" 


@ 15,25 SAY " 7 


- Red On White" 


@ 16,25 SAY ■ 8 


- Blue On Yellow" 


<g> 17,25 SAY " 9 


- Monochrom 


WAIT " " TO P 




DO CASE 




CASE P = 





RETURN 


CASE P = 


1 


COLSTR = "GR + /B, W/R, GR" 


CASE P = 


2 


COLSTR = "N/GR, W/R, GR" 



r\A 



efettl jl*»*> dA* 



CASEP = 3 

COLSTR = "W/R , W/N" 
CASEP = 4 

COLSTR = " GR + /N , W/R , GR" 

CASE P = 5 ■ 

COLSTR = " W/B , W/R , B" 
CASE P = 6 

COLSTR = " B/W , W/R , R" 
CASE P = 7 

COLSTR = "R/W , W/N , B" 
CASE P = 8 

COLSTR = "B/GR , W/R , B" 
CASEP = 9 

COLSTR = "7/0 , 0/7 , 0" 
ENDCASE 

SET COLOR TO & COLSTR 
CLEAR 
ENDDO 

JJkJL »jL«j Jib J-kLw. i^-ji *i>U^ i«l> ^I-a^vX^I ^IjjJI JuLb ,y ^%j 
0*JI 2-J JJi ju, ( CLEAR ) ^.Vl f ljLkiJ ^ CHR(178) .J^JI f Ll^-,L 
.OljL^fl iwl3 J^> jl^K ^ j± J,hT,„ll II* ,>. Ji-ljJI 

0^11 ^1 J* ju^u ( COLSTR ) UUI J* ^ jA\ Jjh\ jl Ja>}L U" 
C^j g-U^JI IJUbj .jl^l i*5L5 ^ .jL-^l |»J t^JJIj ( P ) »>lill ^^. ^ 

: JLJI Jl-JI ijl^j j>l p-ab^j ^1 A» <CoLliwJ 

DO Colors 



Y\\ 



gJjaU £>4^JI -Jj>V3 ^JijJ 



CjjjAaJlj (jti^LJI JiaiJI 



^i-alf a^ddf <iLi>»a &*lfjrf 



t-\ 



^jJ&JI ±>j}«*Jl -djjAJ ubjJ 



,>£*; ( Highlight ) ,J>yZ> Sy*& JOjS. tlJCj JLift j^Sw (£*;> .oljUSVI *jI^J J| 

JujJI ,*i yjJiJill jLjS^I Jl J^JU Ji-\j-JxV oUUjVI gjlju UL-,1^ *5^o 
^-c jLi>VI jiX»cu«JJ ^jj cJ>)l ^^ij ^j .jLi>VI IJLft JuiuJ JL>iVI rliLo J-*. 

.jLx>l J\ Ms. sj>J.l *3J\ LbS - jj_4» 



iJUJI iiLltl ^fki g-ob,JI lift JLLj j^cj 



Sample Menu 



liijiMliiil 



111 






Highlight option with 4> or | and press (J 
or press appropiate menu number 



( \ - YA ) J£i 
<y iLjJ! J* f j^ ( Sample.prg ) ^l^J l^ ^p ULJI j^kJij 

**************** *Sample.prg 

* Create a sample menu with moving "light bar". 

CLEAR 

SET TALK OFF 



i'f 



jjj£dl ^aj^JI jL/jJ^ jt^J* 

* create menu options (optl-opt4) 

optl = "1. Add new records" 
Opt2 = "2. Print reports" 
Opt3 = "3. Edit data" 
0pt4 = "4. Exit" 

* Display the menu 

@ 1,1 TO 3,79 DOUBLE 
@ 2,32 SAY "Sample menu" 
@ 5,30 SAY Optl 
@ 6,30 SAY Opt2 
@ 7,30 SAY Opt3 
@ 8,30 SAY Opt4 

* - - Display instructions with graphics characters. 

@ 14,1 TO 18,78 DOUBLE 

@ 15,18 SAY "Highlight option by using" 

@ 15,40 SAY CHR(24) + "or" + CHR(25) + "and press" ; 

+ CHR(17) + CHR(217) 
@ 17,22 SAY "or press appropriate menu number" 

* Initialize memory variables. 

Opt= 1 

Sub = STR(Opt.l) 
KeyPress = 
Choice = 

* - Reverse video on option 1 

@ 5,30 GET Optl 
CLEAR GETS 

* Loop for choosing menu options. 

DO WHILE Choice #4 



i-t 



gjjtall 4a**ll -iLjjAJ £»k« 

* w^t for a keyPress. 

KeyPress = 

DO WHILE KeyPress = 

KeyPress = INKEYO 
ENDDO (KeyPress) 

* Arrow key pressed. 

IF KeyPress = 24 .OR. KeyPress = 25 

@ Opt+4,30 SAY Opt&Sub 

Opt = IIF(KeyPress = 24, Opt+1, Opt - 1) 

Opt = IIF(Opt > 4 , 1, Opt) 

Opt = IIF(Opt < 1 , 4, Opt) 

Sub = STR(OpU) 

@ Opt+4,30 GET Opt &Sub 

CLEAR GETS 

LOOP 
ENDIF 

* Option numbers entered. 

IF KeyPress > = 49 .AND. KeyPress < = 52 

Choice = KeyPress - 48 
ENDIF 

* Return pressed 

IF KeyPress = 13 

Choice = opt 
ENDIF 

* An option was selected. 

IF Choice > 

CLEAR 

? 'Choice' , Choice 

Choice = 5 
ENDIF 



■!■•• 



£-l>l£jl £af«J»JI -iL<>*-3 giijj 



ENDDO(Choice) 



frA >Vrt?J liUij JjS'lS ^ ^fcL n ,J» JUyUtl jjl»*» ^-o jix-/ JS" ,yj}JCJ IjUj g-ob^Jlj 

: JJLJI jjkJI 

* create menu options (optl-opt4) 

optl = "1. Add new records" 
Opt2 = "2. Print reports" 
Opt3 = "3. Edit data" 
Opt4 = "4. Exit" 

* Display the menu 

@1,1 TO 3,79 DOUBLE 
@ 2,32 SAY "Sample menu" 
@ 5,30 SAY Optl 
@ 6,30 SAY Opt2 
@ 7,30 SAY Opt3 
@ 8,30 SAY Opt4 

j&a jM ( Help ) 6JL&LJI i>jJ ^^ 4i> ,>* ^ ^.li^JI ^ JLJI o~"j 

(^*r" <-Ur»- fLlii-l &>^-ii -i*jUJI j- jL^-VI iLdLS" fJiiwUJd jc-»^J SJiLDI J-c. 

^ £**. .( CHR ) XJIjJI f lj^=-L U-U Jj-^JI ^ ^1 ( Graphic Characters ) 
f LAx-L Ji-V ,^-JI iliS" fij, CHR(24) XILJI f LA=-L (f) j>JI f+JI Ltf 
JSLa Ji*3 Zu*, rJ oj^ LI* ^ CHR(17) SJIjJI f LUi.l ^ .CHR(25) SJUJI 

: sJlxll jjkJI ^ oUi ^atj, .UK*j ("*) -Jtrfl C^ 

@ 14,1 TO 18,78 DOUBLE 

@ 15,18 SAY "Highlight option by using" 

@ 15,40 SAY CHR(24) + "or" + CHR(25) + "and press" ; 



I -A 



jjjiall Ja^jJI *&ij*3 £*L>J* 

+ CHR(17) + CHR(217) 
@ 17,22 SAY "or press appropriate menu number" 

tfJJI ( Opt) jJd.y Ji* »/IJJI cAjJs* o-. i^^w .U;{ ^ JLJI .j*JI ,y.j 
LJ^JI ;L-a)I ,^j>«3 aJ pi. ^JJI ( Sub ) jJd\j »jL^-l ^i jJJI fM od^ 5 *t* (^ 
j-LilL ^UJI ^^1 iji" ^^ aJ ^ ^Ul ( KeyPress ) j*Jcllj « ^1 ; lifJ 
kjjiWI jl~>?l ^j>3 aJ j^j jjJI ( Choice ) j^Jclij ^jl^JLI 4JL& fa,^ ^Ul 

: LJUI 

Opt= 1 

Sub = STR(Opt,l) 
KeyPress = 
Choice = 

jJUl ( GET ) jjtll j— ^ IS .( GET ) ^\ f Lfc-U uUi, UUII <y ( 1 ) 
J*> ,>- dJi ^ .jL»M II* J^ ^^Jl i^^JI e Li p. dJU i*^ oi>^i 

@ 5,30 GET Optl 
CLEAR GETS 

i^LJI J* Lib i^UJI j,^ LJjj au ^ J^u ^ ^ JUI .^ 

: JUI JUI J*» ^ aiij .g-j^JI jjioJll jL^; ^ 

DO WHILE Choice #4 

i/lUI ^al. J c l=ill U* ^UJI ( ASCn Code ) ySLAl ^ && ^ 3JUJI 
>L ^UJI jZJi\ >jS Js. J^l ^ INKEYO UIjJI- jJAs-j, .( KeyPress ) 

: 3JUI jAJI ,>- dUS £^Ly .U* .ki^JL f j^UJ r U c Isl. 



tv 



£jji3JI ±***M -4i^>»a &*ijt 

KeyPress = 

DO WHILE KeyPress = 

KeyPress = INKEYQ 
ENDDO (KeyPress) 

JJL.V ,^-JI ^Li- j? ( CHR(24) ) Jf.V ^J\ ^liL. Jx. f aicuJll J«-> x*j 

&h •( N ) f3j jL=^" a- cPj-^ 1 *>**" »U=M J! <J& «*"* dl* ( CHR(25) ) 
iiUI Jl ^iji IS J>^\ a^*JI Jy >JI UcS IiU| Jl jafc ( SAY ) ^\ fi 
SJIjJI f Lii-I L> Ji*!A-y .( Opt ) j^icH Jt o>ll pjjJI &a a>lj c > jl jl^Ij 
^jdLI J> Sjj^II i^SJI v««> ^Ifcl ji ( Opt ) ^*=ll Z~3 »Lj yj ( IIF ) 
: JLJUI j^LJI ^ iiUi j^ij -os*- ^^* J* pJ&^-AI J**-*> a*^. ( KeyPress ) 

IF KeyPress = 24 .OR. KeyPress = 25 

@ Opt+4,30 SAY Opt&Sub 

Opt = IIF(KeyPress = 24, Opt+1, Opt - 1) 

Opt = IIF(Opt > 4 , 1, Opt) 

Opt = HF(Opt < 1 , 4, Opt) 

Sub = STR(Opt,l) 

@ Opt+4, 30 GET Opt&Sub 

CLEAR GETS 

LOOP 
ENDIF 

( 48 ) o- Iju; c \3jib ^UJI JLX\ ij ji ^>j •( 4 ) j ( 1 ) cm u j v^ 

ajlJI ,>• ( 48 ) iJuJI jjlu LjjL-> ^^Lj f JLkiJll »jLi« jUI iJjJI Ju-5 jli «iL)il 
: SJUI j>-JI J^li- ca dJi ^ .*ull li* ^UJI (ASSH) „£-Sl ij5U Jiil 

* Option numbers entered. 

IF KeyPress > = 49 , AND. KeyPress < = 52 

Choice = KeyPress - 48 
ENDIF 



t-A 



£->>bJ1 £>**N jLi>V3 £*k* 



i>rj ll 3 jbJI ^j^j ^ ( CHR(13) ) JU-aVI c lii- J* r J^iJll Ju-u Uju*j 

: iJUl jjk-JI J^i- ^ dJS ^ .( Choice) ^1 ^ ( Opt ) ^1 ^i 

IF KeyPress = 13 

Choice = opt 
ENDIF 

,Jj C>i>" *-» ^; ( Choice ) jJd\ oli Jl>iV' c^-* J-* -J*"- 4 * i* 3 lA*-*" a>**JI 

e-fcji J! t-^ 1 «** ( D0 CASE ) ^' f L * i -i ri *i iLJ| ^^n e-krf Jl> 

pj Jii g-ob^JI li* ^ L.f .( Choice ) .^juII ^ a^ll ^1 J_c . Lj l>i x* 
a- jsIJIj g-lijJI jLsl pi „s> ( Choice) jjall ^i a^ll ^1 ^^u .U^ryi 



£V 




jjijLJI tyJ) 




♦♦♦ 



VM43 

^Jl i-JLUI X^-Ull ^UlA-JI 3Lfcj-*w. £>i ,*J ^L£JI ,>- ^A-JI .1^1 ^ 
f-I^JI idwJ ^ ^1 2L.JUHI JjL-^JI ^ &A pJ Li" JLxftl JUj ^ 

Jj. SjJLillj LilSJI i^l Jl v 1 ^' *-^4> u* *JL> u,L i J-** tr^ E-W *J>*-» 
Jiii oliSJI ^ tJLJbJI *iwJI a* ic.Li» xu- £&, .ciLo^LJI ^Jy ol^f ^ J^LcJI 

i-jjUVIj (Jijbul oULj {tij*3 »J»it«M U fkuJ ^kApjj J* 4*>L-«-j JUJLmJI Jij^htHj 

,>*Ai; ( Directory ) JJa L&U» iiUtf, *1j4~> yy>*Jh J\ &e- oIjLj ^1 <A>j~\ 
,Ju<j ( Lables ) 2uu^ ,>jjlifr **M» j' cf^*-^' o-° £*y-»*«-o jl ^^ki <^l oULj 
f Jiic^JLI j^L. g-tljjJI oU iiUi Jl Zil^lL, .^UtiVl .Vj* ^_& »_ r< aiiwo oliLj 
(^l>5 J^> &> «iUi> ••»*»> ^IjLj i*Li»l jl oliLj ^1 £— • J .Ijju»VI oULu JjJlo 

,>*. £jL»Jju> J\ Jl I>UJI OJi £-«lW Js*-^ « JJCJI jJL^JU J^ J^-J L*J»|j 

.obLJI jlcIjS 

oLUWI jJj_. Cj j j^jJI .s^kJI J| JLiLartLj .xJI II* ..^ 
ciUJcJI J>i ^ j. ( DBase m + ) g*b*j ^UJI ( Application Generator ) 

.*J}U £-. 1*juLj ,^j ^1 



i\Y 



a^U=.) .=Jl*it3 



^^LaJlj £jLJI JlaiJI 



3^— 4f a IlhTU 



£\0 



1 ■•"'^ l — llj.t-n 

^ ^ g-oLijJI J-J-iJ ajLu ^ .jlaxJII \j>\jj ^i\ Z-jUJI ^j .UlJLi JL^UJI 

LJUJI JjjCj .J *Jl>vUJ.I jL^-l JH* ijuj^l £-»ljJI ,>» g-*^j-> Ji* J^i'J LjJ^> 

: Jttl ja$\ LL^j L^Jyll LJUII g-obj. J-JL13 (^j, . r lkJI ^ 
DO HOME 

: iiLUI J* UUI iJiUII j>j* Jl ^ijj IJUj 
Home System Main Menu 

1 - Add new Names and Addresses 

2 - Print Directory or Labels 

3 - Make Changes 

4 - Delete Names and Addresses 

5 - Check for Duplicate Entries 

6 - Exit the Home system 

Enter choice : 

•i* Cf <& r^~il jLjSl JUL* ^J^w; L. JLJI . -*J| ^i j^p oj-j 

Sju-X** cth*J AftL^I - I 

yi j|ki ydl oliLJI JUal SALS ^ ( > - VV ) JSLill_, JL^iJI I^LoJl ^ 
.^>l »^ j^liU wsJI Ui\si\ ijjC oiiLJi j^j ^ jj^ji ^ 



i\Y 



VUa| -=<lL<fla3 



Enter names and addresses 
Name : 



Address : 
Phone : ^M » ^if Company 



( N - YV ) JSLi 

( Directory ) JJjJI J ( Labels ) *.j-«1I ^Ldl **\J> - *~> 

jjkj 3JUJI tift ^j JLJUII ,ji ( Y ) *jj jLx>V' p-^"'"tl j^-i iiUi -Ui'-'J 

Select a Report Option 

1 - Directory 

2 - Mailing Lables 

3 - Return to Main Menu 

Enter your choice 

Select a Sort Order 

1 - Alphabetical order by name 

2 - City order 

3 - Original order 



2rf3Ua| jJljihl 



: JLJI JljJI jfe ojl^l V-L^ fJ^S-ll A*' .-**** 



Do you want (A)ll records or (Q)uery? 



& J! tffei La* J U*- ( A) JjJI-tW Jd> *• #* ( All ) jL^ 
( Q ) j>JI LL* Ji> <>* pi ( Query ) jLjSIj .obLJI U*13 ,> o^U-JI JS" 
^JJIj ( T - YV ). J£ilt $-11 ( Query Form ) A«JI ^S>-5 uKr* JJ &iu 
o%^ ^UJI iin-11 jrij*i fJAs-W !*- L-J^-j -A»JI ±sA JM *#» ^- pi 
jU ^M op UUM a- ( Save ) p3 ( Exit ) jl=~, i~~ 

Send report to printer? ( Y / N ). 



Nest 



Display 



Operator Begins with 

Constant/Expression "ft" 
Connect 



Line Number 



Line 


Field 


Operator 


Constant/Expression 


i 
2 
3 
4 

5 


NAME 


Begins with 


"A" 



( Y - YV ) JSLs 

L.JUCJ iiullJI JI ji^JI JUjI pi. ( Y ) u^SL, L.JLU3 .pJ&xJtl oUI >Xly 

Lu* gj,^ ( r - YV ) JiLUIj .Jwi LiLUI Jx A^jj, pw ( N ) c-j^j 

JJLJI ^^ LS T LkJ| i_L.I^ gj-LlI ( Directory ) J_JjJJ ( Sample ) 

.^k-ljj ^JLII ( Mailing Labels ) ^.jl^-JI ^LlJI ^ ( i - YV ) 



l\\ 



a^abal .uU^ba 



Page No. 1 






07/07/93 








Hone System Directory 


ASHRAF HAHNOUD 


ALAMANA COMPANV 


765787 




23-OMAR LOTFV 


CAIRO 


FAWZV FAHIN HASAN 


ALSHOROK COMPANV 


7656787 




12- ALREAD STREET 


ASWAN 


HASAN MASOUD LOTFV 


ELZIOT COMPANV 


675778 




54-SHBRA STREET 


CAIRO 


HASN FOAAD 


ELNAHAR COMPANV 


76578 




ELTAWFIK STREET 


BELBEIS 


HAZEH KAHEL 


GAMA 


2645321 




16-ALTAVARAN 


CAIRO 


HAHNOUD GHONEIN 


ELNAHAR COMPANV 


4567887 




16-MOHARAM STREET 


ALEXANDRIA 


SALEM AHMED ELFEKV 


ELNOR COMPANV 


656789 




66-AHMED MORSV STREET 


TANTA 


Press any key to return to menu .. 





( r - YV ) J£i 



ELNAHAR COMPANV 
ELTAWFIK STREET 
BELBEIS 

HAZEM KAMEL 
GAMA 

16-ALTAVARAN 
CAIRO 

MAHMOUD GHONEIH 
ELNAHAR COMPANV 
16-HOHARAM STREET 
ALEXANDRIA 

SALEM AHMED ELFEKV 
ELNOR COMPANV 
66-AHMED MORSV STREET 
TANTA 

Press any key to return to menu 



( t - rv.) jsLft 



tY 



a^aUal .sJlaifaa 



^lk> ^jJ\ oti *~~ljl LJUJI ^ (r) fj, jL^-VI f Jiiii-JI jLAj L-JLLft 

Enter name of person to Edit 
or just press Return to Quit : 

V^" ty .4-^1 3-iUII Jl Ayu *jlj JUoVI ^Li. J* r .l,^..JI .ki^ JUL*, 

^^y ( Beep ) jjIwj ijU^ ^Ik, ^UJI ^li oliLJI »jlc.15 ^ »i>>j-o ^ .L-,1 

: JJUI tl^JI iJLy 

There is no < Name> 
Press any key to try again 



.< Name > o&- ^ ^! r> ^1 tliiJI ^1 
"* J* **=** «aliUJI ^15 ^ J>lj J*w- o)L* oli-j u-l c j^lA\ ^ lilj 

.( o - YV ) JSLiJL 



Enter or Edit Name and Address 



NAME \hVAAim>hr.\4i 

ADDRESS .IgiUMW-VMi'l 

PHONE 3SS&3H COMPANY 




CITY 



( - VV ) J£i 



£VN 



Jj^-JI pjj ,>& f aioJll Jl>y p— VI iiLkll o}U-JI oLsL, j*^ jj> ^ ^iSl 

304 Ashraf Ebrahim 
365 Ashraf Ebrahim 
713 Ashraf Ebrahim 

Write the required Record Number : 

♦Sy^l iujUII ^ ( 1 ) *3j jl~&-?l p** 11 -*' j 1 ^ ^J^* oliU-JI £— « |*Ij 

jik, 1*^^. ^i I!* ^ jl isij .4^. JjVi oj^i J j/fl p-yi v^C a! ^^ 

»jl* JL* ^L< lajj .X-ib »j-o iJjL»dl pi#o-JU j^iy ( Beep ) jji*3 »jUL» u—UJI 
f jL*«iJll ,>. yJky ^Ujftl ."*>* oliL. ^^w r Lbdl jli ^1 jJ6 ^ ^Uwii 

^ jtfllll r .t^T,.,.ll f LkJI ^.'utjikll J*w~JI JUJbw JUjj .Ojil»ll J*-JI ^3, JUA*3 

: ^VlS" J*«-JI LI* oliLj ^yt jj^ ^* »jW>I 3-OL. 

Record # Name Address City 

1 Ashraf Mohamed B-Abbas-ELakkad Cairo 



Delete this record? ( Y / N ) : 



Delete this record? ( Y / N ) : 
^sJ>i\ o^U-JI ^ J> J*>*-% ( -N ) jt ( Y ) Us? c ^lA\ pkL-i, 

o^-JI oliU u— UJI ^^u oLiLJI »jl*L» 0- LU> cOU-JI £-^ JJj .^jo* 



c* 3 



Records to be deleted ... 

Record* Name Address 

6 Ashraf Mohamed 13 - Abbass Elakkad 

5 Medhat Salem 28 - Ain Shams 

Delete all these? (Y/N): 

l*>jjA\ cr>U-JI j>I « Uj&J ,j&x~JLI jui ^ IkJI jU ( No ) lA^i I col** lilj 
( Y ) nJiMiull yc&j (_ji> ZJLjJI iki* j«.t,ii.*j .4j jj^UJI Jj^mJI *5j ZjUS* i Jj / 1' ,vfr 
•Ja yij .jt-JLl j>l> c/iU-, jf iA^ ^-^ j' ( Delete all these? ) Jlj-JI -L.I 
.obLJI IjlcIS ,>o ( Pack ) LJlfJ v^U-JI £--. ^ JJUJI 

( Duplicates ) lȣU o^U*Jl jL&>l - a 

oLixS] f Jic^JJ ^ IjLii-l ^oli f LkJI 3U ^il ij^SL. o^U-, J^ii juu JL* 

(^j jl~»0" f a^-ll jL^v L-juc idJi ^ .1^^- 2-kLw ,_^> ijj^II o^U-JI 

Ojlktl jtf lil g-.Ll^JI JU; ZJUII J* ^j . p lfcU i~~ij\ i^UJI ^ ( o ) 

: Ji\S \ y js jeju p iiliJI J* l^i,^ ^ r f S j>ai o!iU-JI u* icU, 

Possible Duplications 

Record # Name Address City 

31 AymanSalah 16- Ahram street Cairo 

67 AymanSalah 16- Ahram street Cairo 

•ijufcll o}U-JI ^ ^ 4^2,^ J.UI ( t ) (Jj jL^VI 

.(Dot Prompt) 



£rr 



a^aUa) .siUgtLua 






jui yt-sn Lur j^> ^ j>ai jsJkJi a* ouu »j^i5 



CREATE Homedata.dbf 



: jftti JyfcJI oUL, JLiil ^ 



Field 


Field Name 


Type 


Width 


Dec 


1 


NAME 


Character 


25 





2 


ADDRESS 


Character 


25 





3 


CITY 


Character 


15 





4 


PHONE 


Character 


10 





5 


COMPANY 


Character 


25 






~u *-. "VI; fJr« o")U~JIj J»Ui>')(l |»ij ^^Jj .«^iL-« ij-jfiJI CiliLi .Liil j^-jj 

: JUJI jJH IJcS 

INDEX ON UPPER( NAME ) TO HOMENAME 

J-c t5>^w i^JJI ( Homename. ndx ) u-rjiJI i-*Li «Lijl Jl ^ajj ^1 II*j 
Jx. jLcL-j ( Upper ) SJIjJI f Li^-.lj .( Upercase ) ij^ <-J»y« ht^ • !— ^ 

ur i^ jl s^*^ oj^ ^i f J^*- 11 ^ *J U lP J^! J! J>->» J^- 3 

.JLlU LkjJ 7T..^tT_l lJj+H 

oUU .Leos-I ^i-i <^=> iiUij ( City ) lull J^ olsLJI tul! i-rfi c^-y 

: JUI ^.Vl r LkMl^U dUS fly .fc-m. Sia* jjJuu 3JJI ^Ujftfl 

INDEX ON CITY + NAME To HOMCITY 

£* djdl J^ Lww ^UiVl ,UJ J-& tjj^; ur^J '^1 Jl" J»3i K*j 

.iwu JT Jib (Alphabetic) „sU«JI v-ydl* JUisp-^l 



XU 



i^aioj - j«j.i— » 



: ^Vtf JJi, j^^ill 
USE HOMEDATA INDEX HOMENAME , HOMECITY 

^a .( Homescrn ) lJl ^3 oliLJI Jjjus j JUol ,y I^oiwU-ll JUaVI iiU 
.iLLJI J^Vl ^ *>,,& JjLJI ( Screen Painter) oliLiJI ^Jj iLJ* UjLijJ 



Modify 
Enter or Edit Name and Address 



Options 



Exit 



xxxxxxxxxxxxxxxxxxxxxxxx 



xxxxxxxxxxxxxxxxxxxxxxxxx 



NAME 

ADDRESS 

PHONE >!m-l!«m!»H COMPANY 



CI TV 



<xxxxxxxxxxxxxx 



■IXXXXXXXXXXXXXXXXXXX 



IPcf 01 Row 00 Col ac 



iltltliamWrtd^MiiganiraflpffiT , , „ , , M ^ 

Enter text. Drag field or box under cursor with «— ' 
_____ Screen field definition blackboard 



( *\ - W ) J£i 

•M^ 1 ±* *v* J! j*~ ( Directory ) JJjJL ^Ull ^i ^ r _^ 3 
0*~j -=.W-JI iuU-^i J^-ja oULJI iH^^ty o^i f __ 
**-> tfi" jd^II p_*J .l±tt ( CREATE ) __<_l _J ( MODIFY ) __Vl f L_S__J 

.( Newdirec.frm ) 

i~_JL ^J_l ^1*11 j^w ^ ^^ ^ ^ ^ ^, ^ U|) ^ ^ 
j-AJI 0^ JUal ^ LT ( Double Space ) __j. ja _il oliUU jL^r, ( Zero ) 



in 



a*tt£| -sJirfflaa 



( Home System Directory ). 



: j/Sfl Jub^ eUij Ul> ( Heading ) i^JI 
TRIM ( NAME ) 

• a^l ^^ ^ jyrt ^1 Ji> ^^ 6 V JLJI >JI J r y\ 

: „fltf ji^tJ' £**•* <y cy^i ^' JM rv 
COMPANY + ADDRESS 

( Heading ) ij-*JI ^{j Jp' ^> \ij> (Yo) j ij**j| li* ^ jujjo *iy 
(Address) o 1 ^*" oi* ^J- 1 ^ (Vo) jl^ (Company) Ji> of i^j .Uli 
L^-wu o> ,>JL&JI ^^ Jl ^i^, IJLfcj .( Company ) c^j JLJI ^kJI ,y Jji; 

Delta 

5 Abdulla Ebn El-zobair 

OjJJbJI pjj Jj> ,k~2> ^JLj ^^ L^jI «iLj3o Jl ^U«j ^JLJI jj-jJIj 
ij-jJI ^yi JUi»J (»*; idJi .uit.Tlj .UUj Uf-iuu jy ( City ) JLluIIj ( Phone ) 
( >o ) ^^ (Phone) oA 1 ^' pjj J^ j' J^ 1 *t? j&j -^ (*•)■* 
JJ> j,^ jl ii->j .JLJI >JI Jl ( City ) LloII JjP ^-a c^> L.Lj Uy. 
^ s^kJLL oliL-. ( o ) iiU»li r ^£ «-ij- dUD Jiii uij^ ( \ • ) j* ( Phone ) 

..iJlUI Aj**JI ,y jft\ Lttf ,^i, .li^ ( \0 ) JLi,^ j^-aj 

PHONE + SPACE (5) + CITY 

: JbJI JSLiJI j>l *jli j^l-ULU JULftj 

■ 't.vn .-. ■"■ 



VMjoUrffba 



Hazem Kamel Gama 

16 - Altayran 



2645321 
Cairo 



ji ( CREATE ) ^.Vl fjAs^i (Mailing Labels ) X-jl^JI ^LuJI .Ui^ 
JUol j^y ( MAILLAB.LBL ) ^Jj .Jill ^1 jlu*3 ^ La,? ( MODIFY ) 

: Ji\S g-ij-jJI obL, 



Label contents 



1 :name 
2 : company 
3 : address 
4: city 



Hazem Kamel 

Gama 

16- Altayran 

Cairo 

AymanSalah 
Elnasr 

1 6- Ahram street 
Cairo 



jfitf j&3 Jui^JI ^UjJI Jej* JLLft, 



g-bjJI <_*£p i - 



vv 



Ji^JI ,>- jii LTuUSj r LkU ( Hierarchical Structure ) ^^j| ^^ji 

.( V - VV ) 



£YY 



1 .HlA| - Uj.Li 



1. Add new names and addresses 









1 




























HOMEREPS.PRG 
Print reports 




HOMEEblT.PRG| 
Make changes 1 


HOMEDELJRG 
Delete records 




HOMEDUP.PRG 
Identify duplicotet 



I V - YY ) J£i 



l«i* V Ji*i ( Tasks ) S--5, oUUs-j Jl f-JLLj f UiJI jl JSLill 3- Ja>^y 
Ju~-5jJI JLJUJI g-lijj j* ( Home.prg. ) g-ob^Jlj .( Command File ) j*\j\ i-iL. 
iL-ljj LjJljlIj j^j, ai* g>=3 i$>Vl ^-oljJIj .^1 3-3 <y .i^Ly ( Main Menu ) 
u^oj .^^1 £-1^1 Jl ^1 Ji~, ^> £,1^ rf t .U=sl JU*j .(DO) ^Sl 
•g-UJI kiiw3 3Ju* k.....i J| ^afc 3LUii^ OiUjj Jl r lkJI f-JB-oJ *^»*- 
£*\jji Ji" jL^lj ji>Jk» (♦tr—* 3 irAi •«*-» £-*U J! g-^W r^ 3 <# ^J 



.J,.niTlL f lkJI £-U £j£ ^ *JlrJI Jj>Vl Jj .5US— . 



YV 



T 



( HOME.PRG ) V-*yi S-^ 1 E* b >- N " i ~ 

IkJJ *-«SJI 3L5UII Jsiii f yu jJJI g-li^JI j> W^ 1 I-5UUI £*tw 
.oljUSI 3-J15 ^j* .J^U- ,>» j»i .j-^ij ^-bjj ^1 ,>& *~S>^ iJk&Si j*j 
JL ( Pseudocade ) XJ/jN ol>iJI LL^ J-^ g-lij* jf *^ iP •iUUS'j 
JJbU g*^ 3jX j-IjSI UsS dJi Jbu ^ ^ g-UJI ±^ Ui-w LiJ 
jijjl 3-JUUI g-l^J iJjVl ol^kJJIj .oljlwJI *jl* JLii3 ^1 ( DBase ) 

: Ji\ J .j^Jba ( Home.org ) 



IYA 



•u-rfiJI oUJLoj oliLJI uiL» £Xi - 
.^U^JJ Su-Jjl ^^ uM ^(P ^ W^ 5 ~ 

Home System Main Menu 

1 . Add new Names and Addresses 

2. Print Directory or Labels 

3. Make Changes 

4. Delete Names and Addresses 

5. Check for Duplicate Entries 

6. Exit the Home System 

jj&^JI jLsl JlJfcJ - "\ 

^jM\ ^b^JI jl tj tJ\ - V 

2L5UN Jl SayJI - A 

( I ) ^ jL^I *ll> u* e-M ,>• jrj>JI - ^ 

i^UI g^b^JI JuLtf <p Llj (Pseudocode) Ujil oljJLiJI JuLS" juu, 

***** HOME.PRG 

***** Home Management System : DBase III + 

*----- set up initial parameters 

SETTAlkOFF 

SET STATUS OFF 

SET DEFAULT TO C 

* Open the database and index files. 

USE HOMEDATA INDEX HOMENAME, HOMECITY 
* Begin loop for main menu. 



IX\ 



a^aiial .ijijjhT 



CHOICE = 

DO WHILE CHOICE <> 6 

CLEAR 

TEXT 

Home System Main Menu 

1 . Add New Names and Addresses 

2. Print Directory or Labels 

3. Make Changes 

4. Delete Names and Addresses 

5. Check for Duplicate Entries 

6. Exit the Home System 

ENDTEXT 

* Get user's choice. 

@ 16,20 SAY "Enter choice" GET CHOICE ; 

PICTURE "9" RANGE 1,6 
READ 

* Branch to appropriate task or program. 

DO CASE 

CASE CHOICE = 1 

SET FORMAT TO HOMESCRN 

APPEND 

CLOSE FORMAT 
CASE CHOICE = 2 

DO HOMEREPS 
CASE CHOICE = 3 

DO HOMEEDIT 
CASE CHOICE = 4 

DOHOMEDEL 



tr- 



CASE CHOICE = 5 
DOHOMEDUP 

ENDCASE 
ENDDO ( while choice <> 6 ) 

* Done with Program. Return to dot prompt. 

SET TALK ON 
SET STATUS ON 
RETURN 

: ^15" ,ybj ( SET ) jjjl ,>. U>*»u* j;j> ^x 

SET TALK OFF 
SET STATUS OFF 
SET DEFAULT TO C 

oLjL-JI ix-dJS ol- ^ rJ _L g-U^JI ^ JUJI .j^JIj 
j ( HOMENAM.NDX ) , J ^ i ii\ oLiU, ( HOMEDATA.DBF ) 
: 'o-JUIl o^k-JI J3U *- dUi, ( HOMECITY.NDX ) 

* - - — Open the database and index files. 

USE MOHEDATA INDEX HOMENAME, HOMECITY 

«dl (DOWHUB) L,l>sll.IlUll> ^ ^U^JI ^ JUI:.^ 

lu-*ll ^kJI ^ JJ . L aJ! , ( ENDTEXT ) j ( TEXT ) ^% .isUJI 

* Begin loop for main menu. 

CHOICE = 

DO WHILE CHOICE <> 6 
CLEAR 



■lf\ 



TEXT 

Home System Main Menu 

1. Add new Names and Addresses 

2. Print Directory or Labels 

3. Make Changes 

4. Delete Names and Addresses 

5. Check for Duplicate Entries 

6. Exit the Home System 

ENDTEXT 

« t N ) cm jj-»»" pSj *j^ -JLicuJLI Jj. ^jJj jjy ( CHOICE ) _ r Jull 

* Get user's choice 

@ 16,20 SAY "Enter choice" Get CHOICE; 
PICTURE "9" RANGE 1,6 

READ 

L. ajbj ^sll ( DO CASE ) UUJI J* ^^~ e-b^JI o-« JWI .J*J'j 

at*? ( \ ) ^ jLs5.yi fj^M'-j^' 'iJ* •j. J * 4;: - JlJ j 1 ^* 1 J* e* **** •s-** 

^s^y ( HOMESCRN.FMT ) JlS-rtl 3-iLi giL g-bjjl jli »j-jl> o^U« 
^ .Ljayi juu, ( APPEND ) ^Vl j^> -^* Jj^Jb- o^w SiU.1 jU^i— U 
^>Vl oljL^V'j •( CLOSE FORMAT ) jM\ &J> &* JL5-^I iali J^UI 
^ .jjjJI Li* Oj&iy .( DO ) jJi\ &J? fr* *#> e-!x J! &/*=" Ji ^ 

: 3JUI jjkJI 

* Branch to appropriate task or program. 



DO CASE 

CASE CHOICE = 1 

SET FORMAT TO HOMESCRN 

APPEND 

CLOSE FORMAT 
CASE CHOICE = 2 

DO HOMEREPS 
CASE CHOICE = 3 

DO HOMEEDIT 
CASE CHOICE = 4 

DO HOMEDEL 
CASE CHOICE = 5 

DO HOMEDUP 
ENDCASE 

i-iUJI £^j -^JJcJl ZJWI e L^I Jl &±, g-li^JI j>- j^i\ .^Jlj 

: 2JUI jjJLJI ^ a^y J-JLLJI r lb5 Jl Si^Jlj 

ENDDO ( while choice <> 6 ) 

* — - Done with Program. Return to dot prompt. 

SET TALK ON 

SET STATUS ON 

QUIT 

( HOMEREPS.PRG ) ^Ltfl ^.b* v - i - vv 

U,Ml ol^iJI LI* ^ j^b^JI LLS- Jj, . c UuVI ,~- US' ^>i L*^ 

: c* 3 ^ \j*i ( Pseudocode ) 

: UUII ^Ifill oljUSl LJli ^^ iiLUI £_ ^ - ^ 



trr 



1. Directory 

2. Mailing Labels 

3. Return to menu 

" .( r ) ^ 

£j_dl jujlp.5, ( Sort Order ) y- 3 -^ 1 &h ^'jW 3 '! ^-^ iAr* 

1 . Alphabetical Order by Name 

2. City Order 

3. Original Order 

Olll £jS jhSj ( Alphabetical ) yJl^l vs 3 ^ 1 uu cr» " ' 

.( HOMENAME.NDX ) 

tJiL. ^1 £=i ^Sj "X ( Oringinal ) J-*Stl v*-^ 1 ****■ J* ' V 

^kJI £ij-»i ^.^ r 3 ( Query ) £**JI oljUil ^j-c ^ - o 
.L, oULJI UJLftU g-ipj f JLxiJll «J^ »> '^ ( Q ue, 7 Form ) 

.iwUJi j-<^ ,>*■ JM 1 ri " A 

: ^15" ^jlJall £y v*-* Ji^ 1 ^^ ri " V 
OL. gsi fi ( Directory ) JJjJI JUU» ^j^' -atf Ii| ' J 

.( NEWDIREC ) J-&UII 

J-SLiiJI OL. £=i fi 3Ljb^ ,>i>LLc ^M* ^j^ 1 $* 'M " V 

.( MAILLAB) 

.^^1 oUL.j jtJijill oliL. l pLc.l ^ " ^ 



iU 



******* HOMEREPS.PRG 

* Reports Program for Home System 

* Clear Screen and ask which report 

CLEAR 
TEXT 

Select a Report Option 

1. Directory 

2. Mailing Labels 

3. Return to Main Menu 
ENDTEXT 

* — Initialize variable and ask for report choice. 

REPCHOICE = 

@ 14 , 20 SAY "Enter your choice (1-3)" ; 

GET REPCHOICE PICTURE "9" RANGE 1 ,3 
READ 

* if return requested, return to Main Menu. 

IF REPCHOICE =3 

RETURN 
ENDIF 

* Ask about sort order. 

CLEAR 
TEXT 

Select a Sort Order 

1. Alphabetical order by Name 

2. City Order 

3. Original Order 



-■MjihT 



ENDTEXT 

* initialize variable and ask for sort choice. 

SORTCHOICE = 

@ 14 , 20 SAY " Enter your choice (1-3) " ; 

GET SORTCHOICE PICTURE "9" RANGE 1,3 
READ 

* Use appropriate index file. 

DO CASE 

CASE SORTCHOICE = 1 

SET INDEX TO HOMENAME 

CASE SORTCHOICE = 2 

SET INDEX TO HOMECITY 

CASE SORTCHOICE = 3 
CLOSE INDEX 
ENDCASE 

* Ask about query. 

CLEAR 

QCHOICE = "A" 

<§> 10 , 5 SAY "Do you want (A) 11 records , or a (Q)uery? " ; 

GET QCHOICE PICTURE "!" 
READ 

* Display query form if requested 

IF QCHOICE = " Q " 

MODIFY QUERY HOMEGEN 

SET FILTER TO FILE HOMEGEN 
ENDIF 

* Ask about the printer. 

PMACRO= " " 

TOPRINT = " N " 

CLEAR 

@ 10 , 5 SAY " Send report to printer? (Y/N) " ; 

GET TOPRINT PICTURE "!" 



tn 



READ 

* Make a macro if Printer requested. 

IFTOPRINT = "Y" 

PMACRO = " TO PRINT " 
ENDIF 

* Now print the report. 

DO CASE 

CASEREPCH0ICE=1 

PEPORT FORM NEWDIREC & PMACRO 

CASEREPCHOICE = 2 

LABEL FORM MAILLAB & PMACRO 
ENDCASE 

* if printer was not selected, pause 

* before returning to menu. 

IFTOPRINTo"Y" 

@ 24 , 1 CLEAR 

WAIT " Press any key to return to menu. ." 

ENDIF 

*-" — when report is done, set filter and 

* index files back to normal , and then 

* return to main menu. 

SETFELTERTO 

SET INDEX TO HOMENAME, HOMECITY 

RETURN 

U,\j UXj ULUI <w, J f* *iij^ ^Li^Jl ^j ^ ^ Uv j, ijLi) 
Jlj- ^ fi .(ENDTEXT) . (TEXT) ^1 f L^L ^UJI *\JL&\ 
^-ttll „i ^jiCj fifciJI jL^il JLi^lj ojJkll jUsyi ^ r JL^Jll 

: JJ Isll j^JI J^i. ^ dJi ^ .( REPCHOICE ) 

******* HOMEREPS.PRG 



trv 



* Reports program for Home System. 

* Clear screen and ask which report. 

CLEAR 
TEXT 

Select a Report Option 

1. Directory 

2. Mailing Labels 

3. Returen to Main Menu 
ENDTEXT 

* initialize variable and ask for report choice. 

REPCHOICE = 

@ 14 , 20 SAY " Enter your choice ( 1-3) " ; 

GET REPCHOICE PICTURE "9" RANGE 1,3 
READ 

^_ jJ\ (DO CASE ) iiUJI ^ v-3^1 ^L>L~M i^l5 ^yu JUI .j^lj 

: 2LJUI jjkJI 

* Ask about sort order. 

CLEAR 
TEXT 

Select a Sort Order 

1. Alphabetical order by Name 

2. City Order 

3. Original Order 

ENDTEXT 

* initialize variable and ask for sort choice. 

SORTCHOICE = 



ifA 



r i 

@ 14 , 20 SAY " Enter your choice (1-3) " ; 

GET SORTCHOICE PICTURE " 9 " RANGE 1,3 
READ 

* Use appropriate index file. 

DO CASE 

CASE SORTCHOICE =1 

SET INDEX TO HOMENAME 
CASESORTHOICE = 2 

SET INDEX TO HOMECITY 
CASE SORTCHOICE = 3 
CLOSE INDEX 
ENDCASE 

^idl ^ f .ui»ll ij (> j>^3 ^ .^^ ( Query ) £*u J^. .Lj Ifgjy 

J! f aia-ll ij Ji^- ^ ( PICTURE " !" ) ^1 r j*cL^ .(QCHOICE ) 

: iJUJI jjLJ\ J*> ^ dds ^ .Vl>il ijS ^ ( Upercase ) %^S o^ 

* Ask about qurey. 

C1EAR 

QCHOICE = " A " 

@ 10 , 5 S Ay ''Do you want (A) 11 records, or a (Q) uery? " ; 

GET QCHOICE PICTUTRE " ! " 

READ 

&-*J\ £ ij-i j,^ ^ ( Q uer y ) ^ji ^j^ju jLjS | ,.^ 
fi ,J .jri^JI .J-, ,0*1-11 ^ ^ i^uji j^ ( HOMEGEN.QRY ) 
V dJi &J (SET FILTER TO FILE ) ^l f la^t oLLJI u*ll ^Jtp 

* Display query form if requested. 

IF QCHOICE = " Q " 



ITS 



MODIFY QUERY HOMEGEN 
SET FILTER TO FILE HOMEGEN 
ENDIF 

j* KbjMi .li^ryi f f ji/si\ i*u> jl^ oii" iii fjAsJii jU, jui .j^iij 

^ 3JUII jjkJU .( TOPRINT ) jsdtt J f j^lJU aj ^ ^ .^UJI 

•«j»JI li* 

* Ask about the printer. 

PMACRO = " " 

TOPRINT = " N " 

CLEAR 

@ 10 , 5 SAY "Send report to Printer? (Y/N) " ; 

GET TOPRINT PICTURE " !" 
READ 

jLjSI Jx. «Lj ijjiiill ^j^iJI 3-cLJ» Jl ^ijj g-oU^JI j-o JUI «>»Jlj 
ajmi ( DO CASE ) iiUJIj .( REPCHOICE ) ^1 J> a>ll jjiiiUI 
yJi> lib .( &PMACRO ) jj\l\ r Lis-l iJi>X. v^y .^JJI .^Zill ^p 
( REPORT ) yH\ Jl JLu ( TOPRINT ) ijLJI $1* ji ^l\ i*U» f jti«^JLI 

yik, jl lilj .LjUlil oU>il ,> Jj--*JI Jl tfifc U- ( LABEL ) ^-\l jl 

.^ ^1 Sjlif ^V JUL, UU- j/lil jt-^j iiuLLJI J* jj^iJI LcLJ» f jiioJLI 
LiUJI J^ oU>JI ^ki JUL, ( LABEL ) ^1 jl ( REPORT ) yH\ jlju 

: IJUI jjh*J\ J^> ^_o JJi *Xy .Jaii 

* Now Print the report 

DO CASE 

CASE REPCHOICE = 1 

REPORT FORM NEWDIREC & PMACRO 
CASE REPCHOICE = 2 

LABEL FORM MAILLAB & PMACRO 
ENDCASE 



ii 



alalia) jsJO^S 

JuiUJI Jl ^.jJI J-j ( Pause ) U»*J i-iUI Ufij Jl ^afc JUI .>JIj 
Jjy J jui Li*, .^^1 LftUt r JLki-Jll i-fc, f A* iJU ^ .iUi, -V-^ 1 
.^L^JI ^ .jJI Li* ^ SJUI j>-JIj -iiUJI J^ ji^JI 

* if printer was not selected, pause 

* before returning to menu. 

IFTOPRINTo"Y" 

@24,1 CLEAR 

WAIT " Press any key to return to menu ... " 
END1F 

£ijil J^UJ fSj «iwj> -L-^Lrll JLwliJI Jl g>?jJI JJ ip>i JLdl «>*Jlj 

.«j>JI IJ* £->>> iJlill j^k-Jlj .iJb ~»y> ^jlfill jtxi *i< Li" ( Filter ) 

* When report is done, set filter and 

* index files back to mormal, and then 

* return to main menu. 

SET FILTER TO 

SET INDEX TO HOMENAME, HOMECITY 

RETURN 

obUlce— r-l-w 

£^-*3j J*~ J .LcJCL-l f j^JU ( HOMEEDIT.PRG ) g-b^JI ^sj 

: jfitf ^-Ij^LI ( Pseudocode ) XJ/ill ol>JJIj .obL, 



.Cj$*~J\ £j*^J *i)lj^3 liLv ^j^j *1j - ^ 



itr iJUJi u* yi js^ «bu ^j^c yjitii ^i ^ jj^ji ^ 

i~~5jl 3t-3lill Jl ^1 ^ r | tf J JU.il ^ J |i{ 



- Y 



- r 



OL. &\U ijs S o Jv > Jl (LOOKUP) ^juil Jj^.j,^ fi" - i 



iM 



CJ^, j± LtLUI Jx ajUU ^^ ^ ^^UJi j^ji j^ ^ _ ^ 

****** HOMEEDIT.PRG 

* Look up and Edit Names on the HOMED ATA Database. 

* Set up loop for editing records. 

STILLATIT = .T . 

DO WHILE STILLATIT 

* Ask for name of person to look up. 

CLEAR 

LOOK UP = SPACE (15) 

@ 10 , 12 SAY " Enter name of person to edit " 

@ 12 ,12 SAY " or just press Return to exit " ; 
GET LOOKUP 

READ 

* IF no name entered skip all commands 

* between here and ENDDO. 

IF LOOKUP = " " 

STILLATIT =.F. 
LOOP 

ENDIF (LOOKUP = " ") 



UY 



* Convert Lookup to uppercase 

* to match index file. 

LOOKUP = UPPER (LOOKUP) 

* Try to find requested name, and 

* remember record number. 

SEEK LOOKUP 
RECNUMB = RECNO ( ) 

* Count how many there are. 

COUNT WHILE UPPER ( NAME ) = LOOKUP TO ; 
HOWMANY 

* IF no record has that name, 

* ask the user to try again. 

IF HOWMANY = 

@ 20 , 10 SAY " There is no & Lookup " 

@ 22 , 10 SAY " Press a key to try again" 

? CHR (7) 

WAIT" " 

RECNUMB = 
ENDIF ( HOWMANY = ) . 

* If more than one record have. 

* that name, get more information. 

IFH0WMANY>1 

CLEAR 

RECNUMB = 

SEEK LOOKUP 

LIST NAME , ADDRESS , CITY ; 

WHILE UPPER (NAME) = LOOKUP 

@REW( ) + 3,10 SAY "Edit which record*? 
GET RECNUMB PICTURE "9999" 

READ 

ENDIF(H0WMANY>1) 
— if there is a record number greater than 



ilY 



* 



* zero , edit the record 

IF RECNUMB > 

GO TO RECNUMB 
SET FORMAT TO HOMESCRN 
READ 

CLOSE FORMAT 
ENDIF 
ENDDO (while STILLATIT) 
RETURN 

CjIjLJI J! Jj^jU Lj-,LJSM 1»u>jJI JjLy frA liJLt £-2»jj gjtijjJl IJubj 
ZaUJI -JJCL^Sj .»iL«Jl5' £-a\jjJ\ tJuufjij «-olj^JI Ijljj .^j^iJI oliJu r *-" ■!■ 
LF ^u ^^ jr^c^ ^J pJ^oJI ^ ( DO WHILE ) ~*->J J Sd\ 

: LJUI jjkJI ^ £-*=, US' ( STILLATTT ) 

***** HOMEEDIT.PRG 

***** Lookup an( i Edit Names on the HOMEDATA database 

* Set up loop for editing records. 

STILLATIT = .T. 

DO WHILE STILLATIT 

0^ tfJJI (LOOKUP) J^i\ ^-iill «U;I ^ ^JJ^i\ 12UJI J*i. ^j 
pi ^jM\ ^1 c^ r J^JLI Jl>- ^ .( Spaces ) Ul> \jj> ( \o ) J> 
: SJUI jjkJI ,>- £&j IS ( LOOKUP ) jJcti J r >l IJ* c*^ 

* Ask for name of person to lookup. 

CLEAR 

LOOKUP = SPACE (15) 

@ 10 , 12 SAY " Enter name of person to edit " 

@ 12 , 12 SAY " or just press Return to exit " ; 

GET LOOKUP 
READ 



iii 



^1 I*J J_* S>~JI Ji> ,>t dUi ^ii .i-^JI *-^' Jl t-^-^ 1 

yi ( LOOP ) ^1 fbicJ, iyl/sll UWI «> r^! tfUl ( STILLATIT ) 

: oUi ^ ZJUI jyL-Jlj .aUJI j>\j\ J** JLii5 Oj* ^j' J! fc^ 1 

* if no name entered, skip all commands 

* between here and ENDDO 

IF LOOKUP = " " 

STILLATIT =-. F . 

LOOP 
ENDIF( LOOKUP = " " ) 

Ji>^L Jmi U-oj .»Ji\ Li* !>t dow uU^JI jli L—J .o^xJll jS-al lilj 
^j-iiH yj .UJXl J-S" J^H^ ( UPPER ) UIjUI L^JLiwiJ Ld 
ZJLdl f LJ*J U* pi dUU .i^ j,^> Jl ( HOMENAME.NDX ) 
aU-juU oi o-^j Li*, Jij^S Ojj* J[ c MclA\ Aliju L. J^ ^i ( UPPER ) 
\3j~tu ^jjlli ,jj 5ijj.jil .LuiijU 4 a il h o »j— *$* Lijj-> L*ila jj-^J » I >>".„! I 

y^SL; ji ,ySLj ( Ahmed ) pJi\ }li»i . L^J .jl^iJII ZjL^ Ui^ j_c ^JDI 
g-li^JI ^ Jt dii jfe 3I oji ( Ahmed ) ji ( ahmed ) J\ ( AHMED ) 
.^idl J-jj-*J IJLft jt-^jj JLJUJI j^iuJIj .p—VI IJL^ ^LiJI J-*-JI j-c. 

••jr* *JJv*- J! ( Lookup ) 

* Convert LOOKUP to upercase to match 

* index file. 

LOOKUP = UPPER (LOOKUP) 

,iA J* Jj^v ^1 J*-JI fJj oi^i £«M fA •( HOMENAME.NDX ) 
: SJUI jjkJI J^> ^ aJij ( RECNNMB ) jjdU ^i ^1 

* Try to find requested name, and 

lit 



* remember record number. 

SEEK LOOKUP 
RECNUMB = RECNO( ) 

^L^JI f JL^L-j dUil ^Vl ^ *J J^, ^ ^1 ij*.j JL^.1 JL* oVj 
U«15 jMj .^^1 p-V 1 J* ^i*^ 11 o^-JI iJiP _^> yi ( COUNT ) ^.\l 
r lo^iJ J-ii; dUU p-VI y«tf. ( Alphabetically ) LsU* JLJj-. ^j oLjLJI 
o^-JI i^jJ g^J o>i *iV ( FOR ) ^-jcJI ,>. ^ ( WHILE ) ^-*dl 

SJUI j>-JIj .( HOWMANY ) jjail ^ wijltll ^71 J* o^Jl o^UuJI 

* Count how many threre are. 

COUNT WHILE UPPER ( NAME ) = LOOKUP TO HOWMANY 

.*— "VI ,>C i^mJI Am*2 Jj. *Lj jlytfl iUtjJ £-^>jJ «-ob^JI ,yo JLJI .J»Jlj 

^-LJI J3U- ,>-* _rjJL»uJI »jLi-» jiLtl £-« ( Error Message ) Uii. 
.j-Li. ^1 J* jOjclJI Ju* jlksl ,y Ui»J g**loJI J5jiy (? CHR (7) ) 
.UxiJI sil-j £A JUaI pi jJJI ^-71 ^^ ^ pjis— ( &LOOKUP )j/UIj 

* If no record has that name, 

* ask the user to try again. 

IF HOWMANY = 

@ 20 , 10 SAY " There is no &LOOKUP " 

@ 22 , 10 " Press a key to try again " 

?CHR(7) 

WAIT" " 
RECNUMB =0 
ENDIF (HOWMANY = ) 



U\ 



^U^JI f >L 4JJU .OV-JI J* ^ o- ^r^ 1 J^ 1 J 1 ^ -r^ ^-4*- 
L* Jfe/k ) ^JLU ^Vl J* j;^ J*- Jji cr* £**+_ fi LiUJI £— j Vjl 
^.Vl f LizJ juu JJal jlj ^ J^l ^j-. oV liLtSj «i*JI SJLc. JJj 
cbLu ^^ ^i (LIST) ^.Vl f oiwL~y .{ Olll L^J ^ jw-b ( COUNT ) 
pi US' ( Record Number ) J^-JI ,Jj 1;..?it« p-VI <p i*>£ll o^U-JI 

* If more than one record has that 

* name, get more information. 

IFH0WMANY>1 

CLEAR 

RECUNMB = 

SEEK LOOKUP 

LIST NAME , ADDRESS, CITY ; 

WHILE UPPER ( NAME ) = LOOKUP 

@ ROW ( ) + 3,10 SAY " Edit which record # ? " ; 
GET RECUNMB PICTURE " 9999 " 

READ 
ENDIF 

lj*l» £~A iU-, JL* it U « ^1 ^ UU LjjJ c**J\ a] ±^hj 
o^U- J\ JU* c-J -J? jl (RECNUMB ) ^jall J ^ ^ J^jbdU 
*i,l— ( RECNUMB ) jjui\ i*J && JUL, u*,ltll f-VI J^ Lp« 
J-SLUI aL. jti ^ Jjj^dl ^*L> Jj^, dL* ^ lilj .( Zero ) yLJJ 
JJLII j^kJIj .J^JI Jc f jicLJI oXjuo JLfcJj ( HOMESCRN.FMT ) 

* If threre is a record number 

* greater than zero, edit the record 

IF RECNUMB >0 



US 



GOTO RECNUMB 

SET FORMAT TO HOMESCRN 

READ 

CLOSE FORMAT 
ENDIF 

Jl >>J^\j JL,k£j| iiUJI jXtl ^.Ijl J^yj g-U^JI ^ jSH\ ,^JIj 

.dJi x*&jj iJUl 

ENDDO ( while STILLATIT ) 
RETURN 

O^iU-Jl £— t - i - YV 

^L^ ^ ju. Jl jl~l, ( HOMEDEL.PRG ) o^U-JI £— £-b^ 
jlJLL. ( >-j J w J^w *Ujlu,I ^ s >- CH .-dJij ( HOMEEDIT.PRG ) J^JUiJi 
J» Lf&kz ( Pseudacode ) SJ/ifl £»'ji»Jlj -*JLc Jjluuo JJLe. IjLlJ ^jiw-ll 



LT" 



"fl 



.jl-jji s^uji ji ^j\ ^ jii^i . c isi, jt .fjAsJii J»* i*i - - r 

.^^Dl jU-^lkJ ijs^" oj^ Jl ( LOOKUP ) .jJd\ J^ ^ - t 

.^i^JULII ^-Vl {ft. c^JI |^.-o 

.i_>^JLkll *^yi Jx. Zj^imII o^UbJI aJic- j^i> w - *\ 

^jJlo ,^ij ^jjiiill ^yi J-t ij^»« o")Lk~. jl JLla ^Sc j. lil - V 

g-ljjJI yJk; tJjJJUl p-ZVl J-ft JL>>^-o 0*iU- tJLfc JL* CJtf lil 

j oi>i r J^-ii o-° g-^ 1 s- 1 ^ 4j "~-° v^ 1 J^ 1 J*** 3 r 3 '»! 



£'£A 



- A 



Juy L-i JLw—I Jj«-JI li* >~-J *^> £—11 J-& »JL*l-il JJlj l3l - \ ' 

,( PACK ) jSi\ r LAs-fe 

i. J l lxj ,_^1> (.Jj^-I C£Ik~J p—ll JlJLs jlj&J »JL»>.".«..U p-abjJI >fc«,inj - \ \ 

: Jfill JLdLj ^ jc-JlI 1*^*3 ^ oV 1 «^ ^^ UU> ~ ^ 
.Ljl^j o}Ut-JI tl» £-*; jiVI »J»CL~1I £-o £j>\jjJ\ yJLL; ~ <-J 
<Jb>;'^ t^JI O^L>b>JI JL>I oLc^/L .AxT.«.JJ uljjJI pi-j - \ 

. IfTT.iii « 

•J>ljj TtMuJD SjjJil ci^LkmJI iljLc- i/>&{ *i» ~ t 
.( PACK ) jJi\ f LAi-l' LsljS o^UwJI 

: ^VK ^fcT ^ *J,Vl ol>kII u* ji^, ^JJI g-U^JIj 

****** H0MEDEL.PRG 

* Lookup and Delete Names in the HOMED ATA database. 

* Setup loop for deleting records. 

STILLATIT=.T. 

DO WHILE STILLATIT 

*----. Ask for name of person to lookup. 

CLEAR 

LOOKUP = SPACE (15) 

@ 10 ,12 SAY " Enter name of person to delete " 

@ 12,12 SAY "or just press Return to exit"; 

GET LOOKUP 
READ 

* If no name entered , skip all commands 



US 



* between here and ENDDO. 

IF LOOKUP = " " 

STILLATIT = .F. 

LOOP 
ENDIF (LOOKUP = " ") 

* Convert LOOKUP to uppercase to match 

* index file. 

LOOKUP = UPPER (LOOKUP) 

* try to find the requested name , and 

* remember record number 

SEEK LOOKUP 
RECNUMB = RECNO ( ) 

* If no record has that name , warn 

* the user to try again. 

* — count how many there are 

COUNT WHILE UPPER (NAME) = LOOKUP TO ; 

HOWMANY 

IF HOWMANY = 

@ 20 , 10 SAY " There is no & Lookup " 

@ 22 , 10 SAY " Press a key to try again " 

? CHR (7) 

WAIT" " 

RECNUMB = 
ENDIF ( HOWMANY = ) 

* if more than one record has that 

* name , get more information. 

IF HOWMANY >1 

CLEAR 

RECNUMB = 

SEEK LOOKUP 

LIST NAME , ADDRESS , CITY ; 

WHILE UPPER ( NAME) = LOOKUP 



to 



@ ROW ( ) + 3,10 SAY " Delete which one ? " ; 
GET RECNUMB PICTURE " 9999" 

READ 
ENDIF(H0WMANY>1) 

* If there is a record number greater than 

* zero , then double check and delete. 

IF RECNUMB > 

GOTORECNUMB 

CLEAR 

DISPLAY NAME , ADDRESS , CITY 
7 

WAIT " Delete this record ? (Y/ N) " TO ANSWER 

* If answer is yes , mark record for deletion. 

IF UPPER ( ANSWER) = " Y " 

DELETE RECORD RECNUMB 
ENDIF ( ANSWER) 
ENDIF (RECNUMB > 0) 
ENDDO ( while STILLATIT) 

* Before exiting , verify deletions and pack. 

COUNT FOR DELETED ( ) TO NODELS 
OKTOPACK = " N " 

DO WHILE OKTOPACK = " N " . AND. NODELS > 
CLEAR 

? " Records to be deleted ..." 
? 

DISPLAY NAME , ADDRESS FOR DELETED ( ) 
@ 23,1 SAY " Delete all these ? (Y / N) " ; 

GET OKTOPACK PICTURE "I" 
READ 

IF OKTOPACK <> "Y" 

* If not ok to pack , recall a record. 



la\ 



DELREC = 

@23,1 SAY "Recall which one(byrecord #)" ; 

GET DELREC PICTURE " 9999 " 
READ 

* If record number entered , and record 

* is indeed deleted, recall it 

IF DELREC >0 

GOTO DELREC 
IFELETED( ) 

RECALL RECORD DELREC 
NODELS = NODELS - 1 
ENDIF ( DELETED ) 
ENDIF ( DELREO ) 
ELSE 

*- - If ok to pack , do so and show progress. 
SET TALK ON 
PACK 

SET TALK OFF 
ENDIF ( OKTOPACK) 
ENDDO (OKTOPACK) 
RETURN 

j^, tfiii iiLj&dl c* ai^wV *~-i oe-. J*~ ■>* «W r^ 1 4s^"j 
J^-JI J! ,L-»j-" ^ Cr&U •( HOMEEDIT.PRG ) g^l^ J» 
II* oUL, o-- L* j>s*i ^Jj *J^ c—iV e-M^I u* oP v^i 
^1 oLi ( Y ) f JL^-il +£ \>[) .g-iL jiVI pii^ill ,>« *^ J^ 1 
^1 uLl^ ju, UJ 4*-l J~JI II* J*** pA ( DELETE RECORD ) 

: .jmJI II* jvsrp aJUl j>-JIj •( PACK) 

* if there is a record number greater 

* than zero , then double check and delete. 

IFRECNUMB>0 



GOTO RECNUMB 

CLEAR 

DISPLAY NAME , ADDRESS , CITY 

? 

WAIT " Delete this record ? (Y / N) " TO ANSWER 

* If answer is yes , 

* mark record for deletion. 

IF UPPER ( ANSWER) = " Y " 

DELETE RECORD RECNUMB 
ENDIF ( ANSWER) 
ENDIF ( RECNUMB > ) 

,^>w j.ji IS .( Count ) ^Vl fLkL-L JJi, a*^ j^c. £>UJI JU* Jj*~. ^f 

.( NODELS ) j-idil ,y iJbJI II* 

U^i r - ^1 o^JI ^^u ( DO WHILE ) iujIj&JI liUJI fJ Jfc ^ 
up ( NO ) .oU cjli" I3L» ( Delete all these ? ) f jLkiJll jLjj £~JU 
^ij ik-l^ .iUi, o">U-JI I!* ^ J^_ ^i ; 4 LclJ f jL^^JU ^ ^.UjJI 
a-ju, £~*JJ U^ jj jJl c/>U-JI ^L ^yy £-1^1 f> L ^ .J^JI IJLa 
o' L»U j-iSj j-o .^ »iiJL»w u^,. iJLuJI »Lb J .- ,,-tj .JLLLJI oljJi»JI ^ l ^ 
^V J ( Delete all these? ) Jlj — II J_* (Yes) ^ f j^JI ^^ 
^.Sll ^ic^ 3JUJI d» ^j .( NODELS = ) ^-JU ij*U o^ oJL* 
13, i>b o%jwU ^l«J| gJli jJLu. Vj .Ulfi o^U-JI g— ^ ( PACK ) 
oX«-JI Ixt L. l^j 3 Lu oULJI U*L3 oK j* lUJjj ) l^ X;> 
ilUII JiL^I ^ ^ ( SET TALK ON ) ^Vl f L&U ^ JJjJ "{ ;>^JI 
*-L* .1^1 jiftj .g-b^JI .jip J f a*iJll oLi^ ^x> ^Lll UL* j^i j^ 
Jl g-l^l i>uy ( SET TALK OFF ) ^\ f LA=J ^ ( Packing ) £-11 
.g^L^JI ^ «j*J| lib ^^ jjui j^J^jij .iiLj| .^ 

* Before exiting , verify deletions and pack. 

tor 



COUNT FOR DELETED ( )TONODELS 
OKTOPACK = " N " 

DO WHILE OKTOPACK = " N " .AND. NODELS > 
CLEAR 

?" Records to be deleted ... ' 
? 

DISPLAY NAME , ADDRESS FOP DELETED ( ) 
@ 23,1 SAY " Delete all these ? (Y / N) " ; 

GET OKTOPACK PICTURE " ! " 
READ 
IF OKTOPACK <> " Y " 

* If not ok to pack , recall a record. 

DELREC = 

@ 23,1 SAY " Recall which one ( by record #) ; 

GET DELREC PICTURE " 999 " 
READ 

* If record number entered , and record 

* is indeed deleted, recall it. 

IF DELREC > 

GOTO DELREC 
IF DELETED ( ) 

RECALL RECORD DELREC 
NODELS = NODELS - 1 
ENDIF ( DELETED ) 
ENDIF ( DELREC > ) 
ELSE 

* - - If ok to pack , do so and show progress. 
SET TALK ON 
PACK 

SET TALK OFF 
ENDIF ( OKTOPACK) 
ENDDO ( OKTOPACK) 
RETURN 

lot 



a^auM^U^JaJ 



jlj^sll jUi-l - i - tv 

^1 o^U-JI ^^ Ji rf afc ( HOMEDUP.PRG ) j\&1\ j^[ g-^ 

.( Temporary ) c3p> 
**UJI J^ ^ UUJI yju. zju <p - r 

.jjjytJI ol^ i*Li» *Xj - £ 
.obLJI Ijlc.13 o%*— ^^njLf IijI^j i*U Oi^ 3 f^i ~ e 

.*jl jUi j^Jij j~- j* ,> f-yij ji^ij Mi J>* ^^ ri - ^ 

.huUtii JI jf iiUI JI l^->y ^ o">U-JI ^^ ,>« .l£3"Vl -^ ~ ^ 
.CJlS" IS obLJI «JL£-(3 i-^J SiLfrlj Cojil ^jfill <_iLo «— »« *li - ^ • 

J,J\ 'iislsll JJ ^Jl fi - W 



******** HOMEDUP.PRG 

* Home System check for duplication program. 

* Ask about printer. 

CLEAR 

TOPRINT="N" 

@ 10, 10 SAY " Send duplicates to printers? (Y/ N) " ; 

GET TOPR1NT PICTURE " ! " 
READ 

* Display Opening Messages and show progress 

@ 15, 10 SAY " Sorting for duplicates check ..." 
SET TALK ON 

too 



USEHOMEDATA 

INDEX ON UPPER ( CITY + ADDRESS + NAME ) TO TEMP 

SET TALK OFF 

CLEAR 

* IF printer requested turn it on. 

IF TOPRINT = "Y" 

SET PRINT ON 
ENDIF 

* Print report title. 

CLEAR 

? DTOC ( DATE ( )) + SPACE ( 20 )+ " Possible Duplications " 

?? SPACE ( 20) + TIME ( ) 

? 

? 

* Loop through the database. 

GO TOP 

DO WHILE . NOT . EOF ( ) 

COMPARE = UPPER ( CITY + ADDRESS + NAME ) 
SKIP 

IF UPPER ( CITY + ADDRESS + NAME) = COMPARE 
SKIP - 1 

LIST NAME, ADDRESS , CITY WHILE ; 
UPPER ( CITY + ADDRESS + NAME ) = COMPARE 
? 

? 
ENDIF ( UPPERCITY + - - - ) 
ENDDO(noteof) 

* — Done with report, handle printer or screen. 
IF TOPRINT =" Y" 

EJECT 

SET PRINT OFF 



iol 



ELSE 

@23, 1 

WAIT "Press a key to return to the menu ... " 
ENDIF (TOPRINT) 

* Erase temporary index file and 

* reactivate normal indexes. 

CLOSE DATABASES 

ERASE TEMP. NDX 

USE HOMEDATA INDEX HOMENAME , HOMECITY 

,^j} .Ifiuo «ljj Ij,* IftUI Jji»JI »Ju> ,y JbLdl o}U-JI £~a3 liLfJbj *— Vlj 
,^+UI ulil j^J, ^ ( INDEX ) jJii f lAid-,L oLLJI SjlcU L«y 
^J1A\ $£ lil Jlw ^ob^l ji e ^jJI li* oIju ^ JfcOly .( TEMP.NDX ) 

******** HOMEDUP.PRG 

*-■ Home System check for duplication program. 

* — Ask about printer. 

CLEAR 

TOPRINT ="N" 

@ 10, 10 SAY " Send duplicates to printers? (Y / N) " ; 

GET TOPRINT PICTURE " ! " 
READ 

* Display opening Messages and show progress 

@ 15 , 10 SAY " Sorting for duplicates check ... " 

USE HOMEDATA 

INDEX ON UPPER (CITY + ADDRESS + NAME ) TO TEMP 

SET TALK OFF 

CLEAR 



icV 



Js^ 3 J! ^ e-M ,>- jtii .>ji oji j^i i^u, p .^ai at. isr, 

oU>- jl JLyl Jl ^ ( SET PRINT ON ) jX\ I 3fc*Xi L& .LuUJl 

^1 r bio-l LuUJI Jl t^JL,? rJ L -j*\ ( @ ) ^Vl ol>>~ U*L.'i,uUji Jl 

-g-li Jl cr -J»JI U* C^j3 aJLJI jjkJIj ( SET DEVICE TO PRINT ) 

* - - - - IF printer requested turn it on . 
IF TOPRINT = " Y " 

SET PRINT ON 
ENDIF 

fi JUJI-.cJJIj JUJI fJ J\ jojb «.Lt Jl ^ ^u Jl ^ JUI .j^Jlj 

: SJUI j>-JI Jfc. ^ dUij ; ^JU ^J^j Ji ^J| |^ 

* Print report title. 

CLEAR 

? DTOC ( DATE ( )) + SPACE (20 ) + " Possible Duplications " 

?? SPACE ( 20 ) + TIME ( ) 

? 

? 

obiai u*i3 cau- ».iytf ^,1^ uu ^^jSo *ju> o-- ri jui -j*Jij 

.SJLJI j JaJI JA> ^ dUij .J^, Jji ^ |,jb- 

* Loop through the database. 

GO TOP 

DO WHILE . NOT. EOF ( ) 

^j^, ^JJI ( COMPARE ) yi^JI J jd\ .LuJ *T*S. ,>* ^ JUI .j~JIj 

: JUI -jkJI J*> 

COMPARE = UPPER ( CITY + ADDRESS + NAME ) 



ioA 



J! ^ijll J^~ yj ( SKIP ) ^.Vl f L*=J ^U ^ ^ JUII .>Jb 
jljjjJIj iLall Jyi> cjtf 131 L. juji^f ^ ( IF ) ^.Vl f JLk^i, JUfl J^-JI 
jV Lkj ."V r i jAJI J^-JL i^UJI JjJS^JI ^ ZilL. JUII J»wU ^Ij 
If^uu Jjj j^So mALII o}U~JI jli Jja?JI »J^J U-J ijJj-4 jj5j oULJI oJLc.13 
JjVl jAUl J^l J\ jijll juu g^UjJI jli j}U- ^Utf liU .ol^ll ^ <j 
li» ^i»jj Z^JLJI jjiuJIj .Jj>wJI llfj IaALII o"5L>i-JI «^*> jaj^. J» Ijujj 

SKIP 

IF UPPER ( CITY + ADDRESS + NAME ) = COMPARE 

SKIP - 1 

LIST NAME, ADDRESS , CITY WHILE ; 

UPPER ( CITY + ADDRESS + NAME ) = COMPARE 
? 

7 
ENDIF (UPPER CITY + ) 

^ ^ ( EJECT ) ^Vl iL-ljj Hj^l J£ ^ ^^l icU, ^ |j|j .^iiil ZjIjj 

ENDDO(Noteof) 

* - - - Done with report, handle printer or screen. 

IF TOPRINT = " Y " 

EJECT 

SET PRINT OFF 
ELSE 

@ 23, 1 

WAIT "Press a key to return to the menu ..." 
ENDIF (TOPRINT) 



US 



^jL^ilj oULJI JLftljS oliL. i5^! *W> ,>* ^ £*bjJ\ ^ ^Vl .j»JIj 
J{ ^jlfiJI »jU, ^1 ,>» ( TEMP.NDX ) c3jll ottll £». ^ LT i>^iil 

.£*bj\ IA* JUL- j-3 J/tfl IfiJU 

* Erase temporary index file and 

* reactivate normal indexes. 

C10SE DATABASES 

ERASE TEMP. NDX 

USE HOMEDATA INDEX HOMENAME , HOMECITY 

RETURN 



IV 



.allrfJaall *iy 



^jAJU c^- li,, J*" 4 " 



(Application Generator) 



£"\\ 



-I 1 ."'-''" ±Jf« 

$-a\jJ\ f^aj g*\jjj j» ( DBase III + ) £-1^ i/»LiJI oU^kdl jJj-. 

■CjIIm h"tl jJj_o J^A> Jj«o 

oliL.ktl jJj- J-i-i3 N - YA 
: JUI ^Nl iUS" ^ oU.JitII jd^ J..i.f.-| 

DO APPSGEN 

: JiM oljLsiJ Ij^c. Js. ,jjZ*j ioJl5 j^fl? Jl ^jijj Li*, 

1. CREATE DATABASE 

2. CREATE SCREEN FORM 

3. CREATE REPORT FORM 

4. CREAT LABEL FORM 

5. SET APPLICATION COLOR 

6. AUTOMATIC APPLICATION GENERATOR 

7. RUN APPILCATION 

8. ADVANCED APPLICATION GENERATOR 

9. MODIFY APPLICATION CODE 

10. EXIT 

c lii. J* .Li^Jlj jL^yi ii* ^ Lbs- ^ ^ jL> | ^f rJL ^j| jLx ^ 

■W Jr- S^ oLL* ^ ( 5 ) Jl ( 1 ) ^ ^USVI | Ji^X, .JUoVI 
.iiLiJI J* JUI Jlj — If ^ ( \ ) ^yi r MaA\ jbiw L.jic !*ili 

Enter the name of the new file. 

U*13 ^ JUil r - ( CHECKS ) f-.yi 2uLtf iJUJIu* ^ ^ 

•obLJI a*LS .^ ^ L5" { ^ - YA ) JSLJL g^tf oliLJI 



ixe 



^U^taJI ial^m 



CURSOR <- > 


INSERT 


DELETE 


Up a field: t 


Char: «- -» 


Char: Ins 


Char: Del 


Down a field: 4 


Word: Home End 


Field: A N 


Word: *¥ 


Exit/Save : A End 


Pan: **■ A -» 


Help: PI 


Field: *U 


Abort : Esc 



Field Name Type 



"Width Dec 



1 CHECKNO 

2 REASON 

3 TO_WHOM 

4 AMOUNT 

5 DATE 
6 



^REfiTE 



Numeric 
Character 
Character 
Numeric 
Date 



<C:> CHECKS 



4 
48 
48 
12 

8 



Field: 6/6 



Enter the field name. 



( \ - YA ) jCi 

r JLiiiJU iljl lili .( 4 ) , ( 3 ) , ( 2 ) oljUi-VI t- .^l-o-ii J-* c^y 
( DBase III + ) g-*^ Z^UJI LJjuII JUoVI UU ,>» ^ju JUol Z£li f L 

.iiLiJJ Jc JUI Jlj— II JL UUJI *i* yij .( 2 ) pVI jLSw *li 

Enter screen file name: 

JU.4^1 C UiLo Jx Ju*JI pS ( CHECKS ) UJ ^Jj LSLJI p-l JU-al ^ 
( Select a database ) jU£l WfiU ,>- o^ <>JI f-^l Ula ^ iJUJI Li* ^j 
J5LUIj .( Load fields ) f .i*xJU Jcj» ^ .( CHECKS ) obLJI i^li'^l LliTj 
i*ll5 &» (Save) f J*i-ll jU^j ^ .lf. j ..,ni juj JUoVl lili £j»jj ( Y - YA ) 

.j^\ J| ^U_,kll jj^. JuiU 4>cJ ( Exit ) 



Set Up 



Modify 



Exit 



CHECKNO £EEH REASON 
TO_WHOM «»a:«»»»»»^«»»»a;t 

amount aSEEEBEEERH 

DATE vmamnti 



XXXXXXXXXXXXXXXXXXXXXXXXXXXX!" 



E2SSS 



( Y - YA ) jCi 



£U 



&* jijL}\ ( ..,.,a-! Js. j.J^L-11 JUtL-j qUj.IiTM jJj- i*il5 ,y v^JUJI jL^flj 

( 3 )fjj\ f JiJL-ll jli~ L.ju*i .( DBase III + ) ^^ ^UJI ^UtJI jJj- J*i- 
fjhi •( CHECKS ) *.13" fV ^jJJsil ^i^l ^i^J ,*-! &- Jlj— ^ 3-JUJI ,>. 

: "iLLo ^^15" jj>»xJI tjL-<»jj ^i^i j»-A«i— II 

Contents REASON + TO - WHOM 

Heading Reason and ; To whom Written 

Width 30 

Decimall Places 

Total this Column 

Report Format 

>»»»» Reason and Amount -Date 

To Whom Written 

xxxxxxxxxxxxxxxx lllllllllltlfttt mm/dd/yy 

■jj*k" J! olijJtJI J^ i^ls ijjo fi jjj&i Cii -^i i iiUi juo r JikxJll f.ji, 

jLi-^lj .j~kJI lie ^j JJi Jl i>L> JL* c«J ,>&, ( Mailing Labels ) 
Jl jLi-VI U* j>p_j .j-kxJL i^UJI olilill jl^f jlo*3 r JLki^JJ j^ ^UJI 

( r - YA ) JSLUL ^u^jll LiLHI j„& 

^\zLc J_t iia]| ^ ^ L^jJJi ^IjJVl jUil ILiLUI J* -J^U ^ ^, 

^ -jljM Oi>^ ( S ) U* fi ( A End ) 

£.b>J] u_nfl j^j^di r - ya 

,>- (6) ^1 jLjSI ^x, Jir iJ| g,^ ju^i i*^ ,-,^1 JjLftl5 sLi .| ^ 

LftliJI J* yfll ^ iJUJl J* jj . viU j| .^^j^i ^ -^ 

Enter Application Name .• 
LiLDI J* ^i ^ .^ (Register) ^ Vj WLI j^fcji ^j ju.,1 ^ 
Enter Database Filename : 

Mo 



■stUUJaall Jal*a 



set color 01/13/86 


1 






t.Black 6. Red 

2. Blue 7. Magenta 

3. Green 8. Brown 
4.Cyam 9. White 
5. Blank (Secure) 




BRIGHT BL1NN1NO 
EnterGOLORnumba'forLErTERSinSTANDARDTEXT: G . N 

Erter COLOR number for STANDARD BACKGROUND: I N 
Ertw GOOJR numberfw LETTERS in H4HANCED TEXT: I N 
Enter COLOR number for ENHANCED BACKGROUND : G N 
Enter COLOR number for ORDER B N 


Coiiifi^Ssi i#S|?fe| PCanJiKSsPMsl jsgilBEMEiBjgi(|fift« jisaa 





( r - YA ) JS-S 



g-b^JI jU, pi .( CHECKS ) obLJI U*13 uL.' „-! LL^ ,ateJll f ^iJ 

c loii jj> ,>* g-i^ 1 J 1 -- r •( CHECKS ) M^" rs* •/■>" «-*** r-! ■>* 

olsLJI »jlc15 y^p L^lk. o^ li[ (CHECKNO) Llrf* ^ ^>UI ^i-pj&s-tl 
lili tiL. f-J LliS" ^v JfcaTfl lili p-l ,>* g-lijJI jLu fi-isLiJI (Jj <> «^ 
^jUJI jri^V-l o* E-tjJI Jt~. f3 •( CHECKS ) ^j »jLiil 5- *iJI' Jlirifl 
Jx. *k**ll pij jri>»JI II* r y..a-> ^ I Ail ij>j ( Mailing Labels ) ivjj^JI 

CJ Ju *Jj jlfcfll ju^ JUtfl c Ui* j* J^JIj ( CHECKBOOK REGISTER ) 

^ U oUij ..jLiil fj *UI ajSUI ^^ fJ i! ^ V^ 11 Js^s" -^k e*M 

: ZJlsll.j^kJI cr 



* Program - - - : CHECK.PRG 

* Author : Ahmed Maher 

* Date : 01/13/1992 

* Notes : 

* Reserved - - : Selectnum 



iii 



SET TALK OFF 

SET BELL OFF 

SET STATUS ON 

SET ESCAPE OFF 

SET CONFIRM ON 

USE CHECKS INDEX CHECKS 

DO WHILE .T. 

* — Display menu options centered on the screen. 

* — Draw menu border and print heading. 
CLEAR 

@ 2,0 TO 15.79 DOUBLE 

@ 3,22 SAY ( CHECK BOOK REGISTER ) 

* — Display detail lines. 

@ 7,30 SAY(1. ADD INFORMATION ) 
@ 8,30 SAY (2. CHANGE INFORMATION ) 
@ 9,30 SAY (3. REMOVE INFORMATION ) 
@ 10,30 SAY (4 . REVIEW INFORMATION ) 
@ 11,30 SAY (5. PRINT INFORMATION ) 
@ 13,30 S AY' 0. EXIT' 
STORE TO Selectnum 
@ 15,33 SAY " select " 

@ 15,42 GET selectnum PICTURE "9" RENGE 0,5 

READ 

DO CASE 

CASE Selectnum = 
SET BELL ON 
SET TALK ON 
CLEAR ALL 
RETURN 
CASE selectnum - 1 

* DO ADD INFORMATION 
SET FORMAT TO CHECKS 



nv 



APPEND 

SET FORMAT JTO 

SET CONFIRM OFF 

STORE' 'TOwait.subst 

@ 23,0 SAY'Press any key to continue.' ; 

GET wait_subst 
READ 

SET CONFIRM ON 
CASE selectnum = 2 

* DO CHANGE INFORMATION 
SET FORMAT TO CHECKS 
EDIT 

SET FORMATTO 
SET CONFIRM OFF 
STORE' 'TO wait_subsf 
@ 23,0 SAY 'Press any key to continue' ; 
GET wait_subst 
READ 

SET FORMAT ON 
CASE selectnum = 3 

* DO REMOVE INFORMATION 
SET TALK ON 

CLEAR 

@ 2,0 SAY' ' 

? ' PACKING DATABASE ' 

PACK 

SET TALK OFF 

SET CONFIRM OFF 

STORE' 'TO wait_subst 

@ 23,0 SAY ' Press any key to continue' ; 

GET wait_subst 

READ 

t"\A 



SET FORMAT ON 

CASE selectnum = 4 

* DO REVIEW INFORMATION 

BROWSE 

SET CONFIRM OFF 

STORE' 'TO wait_subst 

@ 23,0 SAY 'Press any key to continue ..' ; 

GET wait_subst 

ERAD 

SET CONFIRM ON 
ENDCASE 
ENDDO T 
REUTURN 
* EOF : CHECK.PRG 

1. ADD INFORMATION 

2. CHANGE INFORMATION 

3. REMOVE INFORMATION 

4. REVIEW INFORMATION 

5. PRINT REPORT 
0. EXIT 

jLjSVIj .obLJI IjLftlj Jl iui* o}U- IiU»l j.jLki-JJ jui ( 1 ) jLxiVlj 
i ( PgUp ) ^bL. f Li«=J j,^ oULJI JjLtlS Jj. o^juj .1^1 J ^ ( 2 ) 
JL*iJ r JLk^JJ gji, ( 4 ) jUSVIj .aLjug ^.^Ml J^-JI Jl Jj-^jJJ ( PgDn ) 
.( * U ) ,^»Li* f Lii-L L^-^j oULJI J^juc ^j ( BROWSE ) JjJL-JI ^^Jl 



t•\^ 



jL3.?lj .( PACK ) ^\ r b*s-L Lsl^ o^U-JI £— . Jl ^ ( 3 ) jUsVIj 
Jl SijJIj p UkJI cpi g^l Jl-tfafe ( ) jUSV'j -ji^JI **Lfc J! tf*fc ( 5 ) 

.oli-kdl jJ^ JuJlj 

.( Dot Prompt ) SioJI ii^^Lo JA» ^ i^al^ ^s^kJI g-Uj-JI J-JL13 ^^y 

u-^ J o^ 1 ir* J* ^J^i r «> JI oUi11 c?*^ ^ «j } 2UUJI «y r-^ ^ 

L^j UpLiiL oUu-kJI jJj- f U j^UI ,^1 J| LJLi^L .^x^l ^^JJI 
iJUJI u» ,y g-li^JI J-JLJj pi, .( REGISTER.MEM) . ( REGISTER.PRG ) 

: Jlill JtuJ\ LL£, 

DO REGISTER 

JU-iifl j-bL. J* Li.. all ^ 

j, .xJfall oL-3*Jdl a-J^ i - YA 

ilUJI »I* ^ij .( 8 ) *5j jLj^>)" JiA 0-^ f-J^I £>U..,Ji7ll jJj-« Jj&lJ ,^-j 
|.JLJtT,., l iU «-Ij iiLi ^yu alii Jl iiLiJ^L aji^Jj 3ijL.II *te*Ji\ ^Jd ^>\jjJ\ J*L-j 
jlj^j ^1 j^l/sfl JU-al-C £-li«JI J*» li-iLAi-l Jb^j ^sll jJljill CiljLS-1 JU-al' 
.3JLLJI li^klL <>h«.7." *3 ^ob^JI ^jjiwu j»ji; SjL^jJI ^j jLl>l J5* J-U- L^aLiwJ 

liuJjj »jLi;l »j ,^111 ^ijJiiJI g-alj^JI 4>f JjJi*3 cJj jl ,_^ ». >^r7 , „H j-k; 



jJj_« JLwL5 &a { S ) *jj jl— 2>VI jL^hj ^1-* d-te ■i-..n.;.7.lj .oLL-kJI jJj-« 
g-oli^ u^UJI ( Editor ) £*~sll ^ jj-kj-JI a^ J-*** J! && '^u oUuJiiJI 

.ju^ L5" g-lv'l jjii- JjJ*3 g.Ji:,.. ; j»5 ( DBase HI + ) 



£V- 



0)£aJU 



Uti—, i—*j*U i*>3j&P cU-Ulf 




ubMtlaJI €aUt(j oLuiUJI <->iJ** ifi* y LaJI Jl*"» u* l(<«uuj1I JAuU ( ^ilil oLcjjJ^II 

i-XiS&MJ JbMb olsUIl ael^j SjlJ fJu Ju iiiiiJI Lduikill gjyjl J\ ttLiV L 
oU-UfiJI-Mj (Neural Networks) oL^LuJI U^^ii tJUUj (Object Oriented) 



v±§*ilft *-*Uit mjU* ijiL 



V^ Ji J4* -cUjWI L^ljSfi JU- ^i 5>0ll VJ*JI <-JjU 6- ytttl li» jiiu 
c _>*af I Uui ji^ Uilj , uj^UI oUlkuol 3LJJI l^sll J.-j.vts.y v t£|(, ^.lm 




y^L^ ujli ,> JiWL J*. v tJSII f^p^ . JULI li» ^i ^j^l j^l SL^U oL^I 



(DOS) j fl i fi-ir ,*u»j j»ujr t*jV 



ju^A, (dos) jjjLJaJi r ii»i o»iia yiii s^-ui ^ai ^ijii «> v tjfli ii» , 

.(DOS-4) Jj ; .1. HI pUii L^jl JjllL; <^b - J-li (DOS) JjJuiSlI ^LLi ^L j-^V 
j^l Jcliill ^ijj tf ill (Windows) ii^iM ^Iti Jl iiLiVL (DRDOS-6) . (DOS-5) 

JLi iill ^ Ufcil SjaLJLI c(jjVI fJkl Uxil V L£|I J,liu L^ . -.-i-iij^ .--■■■» ^ 

f.i-^lM.tl jutLuu ^Hl oIjjVI ^ . (Noiton^ljjjt) (PC Tools) E »Ll^ JL. (DOS) 

<JlJLc1 cil .ft l<b cK»>«JI LK^Ji JliSj IkoJI Ja>lu L>j ... nil oLUll Sjl »1 ...I Je. 
Lai I <_iLS£ll cljlxu L*2J . «L»lc <Uutfu <_unl ->ll r- I Jl yUjiaJy (jajill Ijl £g m->\) I^a^LaU 

oLuiojji ^i 4L1 (DOS) J;JuiJll ^ Uii l+l ^jjuj ^1 ^u ^Jll JSLUIj oUJuJI fdtl 

(jj^li <_jLj£IIj . I4X0 <ULSjl(j l^jlf i.ililtl (J^iy oLj^j^iill 6 i* jUaa.) gu-ajS £-» t-wiLaJI 



(feeJtiffj.JU^fl ,*-> A****?' J»M» ,1-JU 






£Vt 



LOTUS 123 - EXCEL - QUATRO PRO 

dlify Joajll oLp^ r ldil«.ljiKJtpSWI JbM' ^jj AiUiJ^I^^-UoliLull j*^i 
oLiLill r ''-' -'j jUuVI UM5 caU^jJI ,£. oLy^jII ,> L.J1UI ^IjiVl ^Lil^l 

^k 3ULi ULiki v tSII £>£; l*S . jc^b tr 1 ** J 11 ** ^ S^ t* w^u^V 1 J*^ 1 

Lull* yJt J**ll jjJj. JcLu JfAltull II^j . olLkaJLIj ijsfcjj-ijlll ^3-lmJI (>» IjJfS IjJ*. 

*IV. £t cUJUo joa jujji <L»^» Jk wt&Hj . <J* SjLj-JIj 4jL&1a ^i tf dilil Jialil 



(jjir ,>if) ciu^ji ««rjij (Pjjssiyr «^uir 



<liU gjjy L.U tLuu oLLJI ic^i JjLHi ^lll ^j£l\ ^jk) ,> V U£1I Ilk ^ 

: gJjJI ^ iuaU. <iuu (DBase) 
DBASEIII+ - DBASE1V - FOXBASE+ - FOXPRO 

y L£JI t ^iu U£ . oliLJI ^Ljji Sj W ^h-mj oLiLJI it^i ^^JL* £— ^ v L£llj 
J£u pl_£il j__ clji 4i*Ju* (DBase) *£l*. gjj* <k£>U i»iill yil^JI ^1 JL^JitL 
iiLill Jc ciLa-JI (jiyy JUjVI LiLi ^a— : jul^ (DBase Structure) OUI 
.^Jt(i (Sorting) jjjll j^ ,> oliLtJI Sj*L3 OL fJsa .1*^4* '|- — -~u 



£YV 



4*U,v (Query Files) i^i olii. ^laiL-b cAl^JI c-c £^\ £>_A, (Indexing) 
(Dot Com- <UUI ^Ijl f.ljiiJLu.1 v Ll£II ^^ Ui .ottUJI d*^3 luy jjjjULJI 
5j — Slall olj .i« "i« ^IxLLm.^ ciliLull jfe(jii JL^Lill g-JjJI <_jtLS jc(ji, mands) 
(Procedure Files) o(>ki]l cUL^ (Memory Files) S^ljll olil^, (Memory Variables) 
JSUha, ULLII tr ^i ^£^11 ,illi$, J( — iaVI <£Li ^i ^1 jjl^jAiiUIJMt, 
<iUiVL iL-i oi>£*i «Lu. ,>. V L_£II u*^Ly . (Debugging Tools) * IkLVl ga^ai 
j> <!UA- JJ* Jf>» ^-> m^ II JKJiVl «> J*l*ll Jt tsp^ LS. Ja.iL.^1 ^Jl 

.VA- 



(^LJf^f) «alil*J» J— sfjij ^jjXfilJII u*Uft 



J(>Jlj j^^U Jj-— B cj-i Je Gsi^u JjVl *>^iL^rVj^. v L!flllJ J i >> aiju 
irt c* JJI J-l—iJI gayll J,VI »>^J| j-. ^L j (DBase) <fiU gJj, ^i o,»Ai „.H 
. oLtfkll (Jii otf L-» jja^ ^aij yillj SoU&II <Jle ijiukUl ^>ljj|l <jL& ^k ^j^iuull 
JliiV I £__» j — .u*ll ?,,.«. oil. 3 ~«— X£ • 4> v l 231 rf 1 -*— jj c -i-jjaj 



«a» il B: rt i rty ijJjj ,»JU cii 



^1 <_££JI (> ^1 111 Jl jSiH Jill <ujjJI 4^11 <JLJL. iiU.1 V L£1I II* aju 
JS3 uriL^V I £>ilL v l2fll ^i&i Vj . oLLJI ja^ ijU fJ^i JLLut oLluL: Jjds 

oj^JI . « l>aj Su.. j> oy£L v U^llj . JSIaJI * 1* j> JS c^^jcj oljfMj <JkUI JiljJI 
. yiLSIIj 0,VI i*}^ "cliLJI J*U3 Sj'jj Ha" JjV» v 1 ^ Wj- t> <*5^»* OjVI 
tf 1 ^ ^Ij^Lm.^] ^Luoa if ill JuUJI u>^ oL^k. ^ Lfci c> Ai v L3£ll ,> ^Lill ,>Jb 



£VA 



1+^jx.j c-ULJI JLijI yJc <i.KJI SjL^-Hj oiU' « ,sL f? ^^ ^^^ *— *V* 

J*ljiJ E ^lS ujUll fUii t> yiu ytiSII 6* iJCJI *>?Jlj ■ Ji^ ^^W U-i.^ . nu 

*U» £>-*• jjIj" 0-»"j • (Transaction Files) 4S>JI oLiL. £_• J*Uj3 Jjll olil^JI 
JLJttl (Procedure Files) c^LiH clil- f . ri1 .. M ^311 g— L*U gA>^£ oU*ll oLL-^ 

^lI; yilillj . otSLyill ifliS ^ f>» A •■■■..■ Uia.1 UtLL- gj^j <klS JbLi ,> jj-IjjJI 

^i^ ^ Allillj « oliUJI JUJ oULi ^i L4LSJL yill yljWI jLiiil f 1^1 ... . II 
^^lUI J jl^yi J\ hS^u «£—« y^— i 4j-~ J* <£>I^ oULu JLAjI oLALi 
.. r ls ..U'l l a^j-^ji Liuj (^uajjj -uiLi^y I el ij j Will p^u G>*^ iW^-"^ O^l* 
J ~j — £L ^ (j— x. cUJ^xi jj—c J4jj v L&llj .(DBase 111+) g-Lij^u u-UJI 



oLil^JI j ,fj v 'Ull *»-*>«> 



<ikUI ^tiaijb&ll oJLuVl Uoi^ L>L <Lu ollLJI j>? <i^Ji V LSJI li* JjllL. 

<LjuJI CiIjjI i .m I Luj jjuJI oU£*ljaJLujlj jjLwjII Ajlcl) j^&lujII r I t^-t.-l Jfr- .'H*f j^iiJ 

<> kjlufiL UU.LJI aluu^ii &>«-oi** wtBiH ^jAi fS . JLiAill |Jui dlj JaLljlj<iJ^JLI 
o* onugM <fi*» U Ijki «-i«UI J^ Cfcj3#M-o* jJS Jji*. Jiij yill £tUj-A»U fji] 
JtJJI JUl^Uf J,lSu U*Jj Iju^-ij^ JLJjj V L£JI ^Oy .■ oLiLJI ,>1 ^ i^ki 

^(jlcf^LJIuij-^l^l^'t ..1 <illgf-I> I «; ? »«li << ■ ~*l ■ - -j ' 'JJ*^ 1*11 -> J 1 ^jujj-jJLU 

irfUllj Wl J>» U-^p Ls-lw-KH J*A. L£, .fL^cdLiSH^ Ll^^^I 
t>iju V L£II ,>-^ljj • oLuyo^iil ,> <iu^ £ Ijil ,ui La,Wl,„l[ <a^.^j]l JL^*Vlj 
\ . ,> jSSi o(L«bl J^a C> A ^ .ju-LJI olu^jj c JUi j^i] Ua*i jiilij J^^UI 




£V\ 



*&>i*p *u«kir <&§ *4—*uti 



«uaj4 LaS . cJxuLaJI CiUtjjJji i til II » K'^j .".!»... I •s.tljjU'^j.-.l ^jl-t,! Lj^j^jjS£L<Jbj3jJLI 
i ijjlji Jfl^J *J 1 1 MVp Ouiialtl iJu^aj! £* U±i fJajll tluoy Jjl-v*! Cil.A ml . n »l 

; futl Jjllu U£ . (CASE Tools) gJjJI <— al* oM fl.tVi ...Idll^j ^Uull 
oLL«^JIj*iU«JI oLtuu^ jJi^ ax^ 1 (A »A^' f U"* i£* S^-l^iU<jlUI y^LJI 
r lA^L«I V L&JI JjUu L*£. fc Ji«^U^5i>-^btf*^l^5•^ | SJlJ|J^le^b^ l ^ , 
^WI^ot:UI>boVL^yij V :liII<^Jl.JI^VloVl^^^jJlo^l 

• ,jc 4jLaJ-u» JJx. Jjjj <_jLj£IIj . (J c\jiajua'i\ »(£jl(j jljill JUjI ^A 



tf rlh*yr «LS*H£ i^-ilf 



■»■;-; v LiSII lift <> OjU. on.rt^-ill JJCJ ,j-uu»ilU kjUll j> J£ JaJ ,j? J^V Li* 

i£ll Jli AVI ,> J_}J*il ?1m-I* **i- To . ,> 




iA. 



iWtAAe : £ ,J *T & 



TTIt.vr LySlh- YTU.VT - Tflli VI : Ci 



Lyjl ^g-Jjg L-iA^J j ;-s ;l " LjlJs' ui& a 




I! 



^* tat^&if 4i** «* i*#o**** W *»*&' ^^ 
; ^jaK ^f fcj*»» J&& «j*U *W> V-UVI ^Iwtll ^4 

jftflf ttj • W# **dfl ^ iiU^i t^Ji ^[jj. J^Jt 

t<i» UjtSJI »*U*wl (£>*»»,> J^isty 1&\#J h?ji 
****— i»k»W *M *J* ** M^ ( UJ^ 1 V <* 

i^di j* a*u? ^ij vuu ^-bii ^ j><Ajf 

&j&$ yrfb - y*U<l (^Uj WU&' * W> " v^ ****** 
oU*M>< ^Uf 0* ijl** Vv ^a<1 Jb* - piji ,y j***J*o* 



• 



Uj__J»U 






(DOS)JJWJI r lkJJ_.Li)l tJFj ll- f. 

MSD0S4- MS DOS 5 - DR DOS 6 
MS WINDOWS PCTOOLS 

NORTON UTILITIES VIRUS-SCAN 

j jijja&ltl JjL j-1 «_JU - £ 

LOTUS 123 - EXCEL- QUATROPRO 

FOXBASE+ - DBASEIII+ - FOXPRO - DBASE IV 
( jWl.j*l) 

oLiLJI Jucly ijbl *Jb oLiujki - V 
oULJI 1 >— *lj t^ 1 mull oLjjjj t - A 

y-ftUk*^! . LTJJIj ij^.\ f-M\ - \ ■ 



tyJh Ula «t^C 4Cf*ft* 



^^k 



■ " ' * •* YiV.ll. ^l-.-.tU \tlt^^V/TlI•TV./tt•^VrTA : 1 »-! > _^UII-lJ^^-JJL 4 Jtl | J-"J^-Sj |l o-^*- J| l J -^» l, 
Delta Computer S ABDULLAH EBN EL-ZUBAIR NOZHA HeUOPOUS, CAIRO Fax. 8435665 Tel. : 2467338/2440375/2444997 



jJl^A+l 



SJjLuI (jji C^*JLaJlj <*Mt\jtt oljxaJI (fj4 ij U . rt l a-vlU ^ joaS JJ*. jJji L^u-u^ll ojJuHJ 
oUUuVlj oL^kll jJiJ CitfLauu ikujil iulkJIj <uill J>LJI (> JJ^ CA"jL«il obuaLJI 

. oUjjjiU (jj. JjJjJI <aJjJ UUa ^lllj Sjjbdlj j 

0LL14II <> jjAaLI Ljlill^iajJJI olj l .M luVI o^-jJLy <jjLj_aJI y^UI <> jjxJI ajfc -\t i 
jki yiJI JLuftVl ^1 LJUIj laity! I LjjiiJI (jLJi ^j c^L^f j^l^ 3^_^| J .x-] 

i> JjJjJI jxi*i4 " tilj " iu^ jjLil^uy P |^xL r L3 oIjIu-^Aa (> ^j tflU Jej 

: yl L*f* l*jLUJil u^ju ^js. j^ ^| oljLauVI 

. Ufiall oUm^Ij c%JI ^ UVI oL-LJI ^ JLLjV ^1 oL,I^ f Ull - \ 



,<L 



IUVI, 



Jljt^L t 1 "t ,>lll_l-l i^JLJiljL 



-k*jj- 



JUUI 



*rt!J J 



I g— o I jj J_f Axi ■ 









<3A>tf <UJIj 









<WM 



mm* ji<*w , 



T -»,-i#f*^* i 






,^(. H J$i t f^|^»»JM 






^^ Mj/MjMf f' 1 



'^i^r; '-I 



te*» a,i «««""m 




.. i f^^f * I^a 



luifi'^jf V'Jilf'S" >'< i i ii l< i i]ilinj»iyinw ll l i iium Hinin i nw 




J< ^j[!|lTj|| I ftpj naYiftrfniniii'fi A Twf i-t """" * * 

f^# ljii'^A||t i|^ j ii' ii»»i>ii i » ii i|* ' S>l l. 4^ '*« ' . . i »i i infil l — Yt 

'iiiiM/.!!".'; ',' " CO^U 

4 

iUj4 "-* 1 1 

*!•*,# ■** to 

1 & »J U r,i. ..i*l I m.i c,i../.<«h.?i ttt a ! * nj[ "w T A 

;j ' i an i Mn»»iin ii a i m Hi u i mn i ni ^ 

U^WMwH^MM jj| u t mrni i I nf 1 1 < A fl i t il ■* H 





S w— «»m»—«y < ^ 



ij_i« ■*> ^ 



lUll^b 5'- * 




a I, i ,,i iii In'll I , « , i ,i„ i i i jrfUrtl _ V 

' << ' ■ *« £$% a UjJt- 1 - a 

Il,„. -"^Ji *•* ^ 

.M« bjj ~ \ + 

_____« Li jj — \ \ 



-^UCllg. 

n iit i"lM fll lll U * *g«W« 



O ^i i u iiii i^i iiii il ll g ii H i * gU 



f &ittlt *j^ll J 

| l ma l M l f« 



-**UM 



-\Y 



UL&i'i JL-U J , j « .w g — »li« - * t 



3j,„, }"*}< J\ i i muf 'lil) £— — 

^.iniiM^I dLJil J A A" i 

oLju^II tJu. i« J j« ■ *■" | 



'm^b 



A^BOUUUH'SBN BL^UBAIR NOZHA HEUOPOLIS, CAIRO Fax. 243586S Tel. : 2467338/2440376/2444997